排序算法
JessicaZhang27
共同学习,共同进步
展开
-
排序算法之简单选择排序
这一系列主要讲的是排序算法,首先会简单介绍各种排序算法的基本思想,然后会给出每种算法的Python实现和C++实现,代码中均有非常详细的注释。最后会给出不同算法的复杂度分析。**简单选择排序的基本思想是**:通过`n-i`次关键字间的比较,从`n-i+1`个元素中选出值最小的元素,并和第`i(1<=i<=n)`个元素交换。原创 2016-03-02 21:33:35 · 655 阅读 · 2 评论 -
排序算法之直接插入排序
排序算法之直接插入排序这一系列主要讲的是排序算法,首先会简单介绍各种排序算法的基本思想,然后会给出每种算法的Python实现和C++实现,代码中均有非常详细的注释。最后会给出不同算法的复杂度分析。直接插入排序的基本思想是:将一个元素插入到已经排好序的有序表中,即得到一个新的、元素个数增1的有序表。我们可以假设最开始的有序表只有一个元素,则重复上述过程,直到所有待排序的元素全部加入到有序表中为止。原创 2016-03-06 23:21:52 · 681 阅读 · 1 评论 -
排序算法之希尔排序
排序算法之希尔排序这一系列主要讲的是排序算法,首先会简单介绍各种排序算法的基本思想,然后会给出每种算法的Python实现和C++实现,代码中均有非常详细的注释。最后会给出不同算法的复杂度分析。希尔排序的基本思想是:将相距某个“增量”的记录组成一个子序列,在每个子序列内分别进行直接插入排序,使得到的结果基本有序(即小的关键字基本在前面,大的关键字基本在后面),最后再对整体使用一次直接插入排序,得到有序序列。原创 2016-03-08 20:37:06 · 604 阅读 · 4 评论 -
排序算法之冒泡排序
排序算法之冒泡排序这一系列主要讲的是排序算法,首先会简单介绍各种排序算法的基本思想,然后会给出每种算法的Python实现和C++实现代码中均有非常详细的注释。最后会给出不同算法的复杂度分析。 文中Python代码是在Python3.4.3或 Python3.2上实现的,C++代码是在Dev-C++5.7.1上实现的。如果有什么不清楚或者不对的地方,欢迎大家随时指正。冒泡排序的基本思想是:两两比较相原创 2016-02-28 18:00:46 · 662 阅读 · 2 评论