![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言排序
S1842017712
这个作者很懒,什么都没留下…
展开
-
冒泡排序 c语言
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。冒泡排序算法的原理如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了第一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何...原创 2019-03-28 15:32:13 · 504 阅读 · 0 评论 -
插入排序 c语言
插入排序的最大特点:越有序越快,完全有序则为O(n)稳定性 :稳定 时间复杂度:n ---- n的平方算法思想:从第二个数字开始向前比较,先保存该数字,向前循环如果有序则跳出如果无序,则每一步都赋值,找到合适的位置插入之前保留的该数字void InsertSort(int *arr,int len)//从小到大{ int tmp; int i; in...原创 2019-03-28 16:18:03 · 246 阅读 · 0 评论 -
shell排序 c语言
shell排序分组进行多次插入排序//时间复杂度O(n^1.3)~O(n^1.5),不稳定//一趟shell过程,缩小增量排序,多次使用插入排序void Shell(int *arr,int len,int gap){ int tmp; int i; int j; for(i=gap;i<len;i++) { tmp =...原创 2019-03-28 16:39:07 · 805 阅读 · 0 评论 -
快速排序 c语言
快速划分是不稳定的,它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列,也可以非递归进行,两个方法依次讲解。快速排序 的一次划分 时间复杂度O(n)空间复杂度O(1)int Partition(int *arr,int low,...原创 2019-05-15 16:47:43 · 160 阅读 · 0 评论