|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/sorting-algorithms/
课程评论:没有评论
**课程名称:** 使用 Java & C 进行排序算法:打好基础 **课程概述:** 本课程将深入讲解七种最重要的基于比较的排序算法,并教授如何估算任何算法的时间复杂度。学生将清晰掌握如何分析算法的最佳、平均和最坏情况复杂度,并对每种排序算法进行详细分析。 **课程内容:** * **七种排序算法:** * 冒泡排序 (Bubble Sort) * 选择排序 (Selection Sort) * 插入排序 (Insertion Sort) * 希尔排序 (Shell Sort) * 快速排序 (Quick Sort) * 归并排序 (Merge Sort) * 堆排序 (Heap Sort) * **堆数据结构详解(堆排序部分):** * 堆的操作:插入、堆调整、删除、堆化 (heapify) **学习目标:** * 理解各种排序算法的实现逻辑。 * 能够分析和估算算法的时间复杂度(最佳、平均、最坏)。 * 掌握堆数据结构及其相关操作。 * 使用 Java 和 C 语言实现这些排序算法。 **课程亮点:** * **可视化讲解:** 通过直观的视觉描述来解释算法逻辑,易于理解。 * **理论与实践结合:** 详细分析算法性能,并提供 Java 和 C 语言的实现。 * **面试准备:** 掌握排序算法是准备技术面试的关键。 * **跨语言学习:** 课程教授的方法可轻松应用于其他编程语言。 **价值:** 虽然现代编程语言库中已包含排序工具,但从头学习排序算法对于建立牢固的算法基础至关重要。此外,排序算法在求职面试中经常被问到,因此掌握此主题将极具价值。
This course will help to understand seven most important comparison based sorting algorithms along with the details of how to estimate the complexities for any algorithm. Students will clearly understand how to estimate the best case, average case and worst case complexities for any algorithm along with details analysis of each of the sorting algorithm.The seven sorting algorithms that you will learn in this course are as follows: Bubble sortSelection SortInsertion SortShell SortQuick SortMerge SortHeap SortStudents will learn details of heap data structures along with the heap operations like, insertion into heap, heap adjust, heap delete and heapify while learning the heap sort.Although, sorting utilities can be found in the library of any modern day programming language, however, it is must for a programming student to understand them from scratch as this will help to form strong foundation on algorithm. Also, it is often found that, many questions are asked on sorting algorithms on Job interviews, hence, it will be really fruitful to have a strong hold on this topic.In the course, I described the logic of each of the seven comparison based sorting algorithms using visual description that is really easy to understand, then I explained the algorithm, analysed them for their performance and finally implemented them using C and Java.If you are interested of implementing them using in other language you can also do that following the lectures. It will be really easy to do.