做编程,排序是个必然的需求。前端也不例外,虽然不多,但是你肯定会遇到。 不过说到排序,最容易想到的就是冒泡排序,选择排序,插入排序了。 冒泡排序 依次比较相邻的两个元素,如果后一个小于前一个,则交换,这样从头到尾一次,就将最大的放到了末尾。 从头到尾再来一次,由于每进行一轮,最后的都已经是最大的了, ...
分类:
编程语言 时间:
2017-04-05 16:20:05
阅读次数:
294
各种常用排序算法 类别 排序方法 时间复杂度 空间复杂度 稳定性 复杂性 特点 最好 平均 最坏 辅助存储 简单 插入 排序 直接插入 Insert O(N) O(N2) O(N2) O(1) 稳定 简单 希尔排序 Shell O(N) O(N1.3) O(N2) O(1) 不稳定 复杂 选择 排序 ...
分类:
编程语言 时间:
2017-04-04 23:20:06
阅读次数:
309
#include<stdio.h>
voidprintk(intarray[],intlen)
{
intm;
for(m=0;m<len;m++)
{
printf("%d",array[m]);
printf("\n");
}
//printf("\n");
}
voidswap(intarray[],inti,intj)
{
inttemp=array[i];
array[i]=array[j];
array[j]=temp;
}
voidsort(intarray[],intlen)..
分类:
编程语言 时间:
2017-04-04 18:03:51
阅读次数:
125
选择排序思路在于选择 先认为第一个数是最大值 将当前最大值序号存在一个变量中 将剩下的数依次与最大值比较 比较到最后将最大值序号指向数与当前第一个数交换 ...
分类:
编程语言 时间:
2017-04-02 17:28:29
阅读次数:
186
1.二分查找法 2.冒泡排序法 第一次遍历出最大的数,放到最后,依次类推.... 3.选择排序法 每次一次遍历出最小的,存放于A[k]中 4.插入排序法 5.插排序法(用的比较少) 6.递归找最大值 ...
分类:
编程语言 时间:
2017-04-01 00:06:03
阅读次数:
222
基础算法: 1、插入排序: 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置插入。 2、希尔排序: 先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接排序。 3、选择排序: 在未排序序列中找到最小或最 ...
分类:
编程语言 时间:
2017-03-31 20:47:10
阅读次数:
177
做编程,排序是个必然的需求。前端也不例外,虽然不多,但是你肯定会遇到。 不过说到排序,最容易想到的就是冒泡排序,选择排序,插入排序了。 冒泡排序 依次比较相邻的两个元素,如果后一个小于前一个,则交换,这样从头到尾一次,就将最大的放到了末尾。 从头到尾再来一次,由于每进行一轮,最后的都已经是最大的了, ...
分类:
编程语言 时间:
2017-03-31 18:09:47
阅读次数:
197
上一篇介绍了冒泡排序,现在介绍一下其他的排序算法 各种排序的稳定性,时间复杂度和空间复杂度总结: 3.选择排序 直接选择排序算法的思想比较简单:(假设数据放在一个数组a中,且数组的长度是N) 1:从a[0]-a[N-1]中选出最小的数据,然后与a[0]交换位置 2:从a[1]-a[N-1]中选出最小 ...
分类:
编程语言 时间:
2017-03-30 17:09:45
阅读次数:
145
该文主要讲述基本排序算法:冒泡排序,选择排序,插入排序;高级排序算法:希尔排序,归并排序,快速排序的算法实现(JavaScript)和相同数据下的运行时间对比。
分类:
编程语言 时间:
2017-03-30 11:58:56
阅读次数:
241