算法4 1.排序 选择排序: 每次获取最大的数,交换位置 插入排序: 把数字插入有序数组中 希尔排序: 有间隔并且间隔递减的 归并排序: 归并: 两个有序数组的合并成新的有序数组 ... ...
分类:
编程语言 时间:
2019-04-01 10:25:48
阅读次数:
135
冒泡排序 算法思想: 1、相邻元素对比,如果前面元素比后面的大,进行交换,直至最后一个元素,一轮结束之后,最后一个元素为最大值2、后一轮进行的列表数量比前一轮少一个3、反复进行上面两步,直至没有元素进行对比为止 复杂度: 冒泡排序的平均复杂度为O(n2),当原列表为正序排列时,复杂度为O(n),为倒 ...
分类:
编程语言 时间:
2019-03-29 00:46:59
阅读次数:
189
1.关于数组和链表 数组:支持随机存取,取数据时时间复杂度O(1) 插入删除的时间复杂度O(N) 链表:不支持随机存取,取数据时时间复杂度O(N) 插入删除的时间复杂度为O(1) 2.排序的时间复杂度 冒泡排序、选择排序、插入排序,平均时间复杂度为O(N^2) 归并排序、快速排序、堆排序,平均时间复 ...
分类:
其他好文 时间:
2019-03-25 23:40:34
阅读次数:
288
三、堆排序(Heapsort) 优先队列可以用于O(N log N) 存储空间增加一倍 排序类别 排序方法 时间复杂度 时间复 杂度 空间复杂度 稳定性 复杂性 平均情况 最坏情况 最好情况 选择排序 堆排序 O(nlog2n) O(nlog2n) O(nlog2n) O(1) 不稳定 较复杂 堆排 ...
分类:
编程语言 时间:
2019-03-25 10:31:01
阅读次数:
177
5 1 输入一个正整数 n (1≤n≤10)和n 阶方阵a的元素,如果方阵a中的所有元素都沿主对角线对称,输出“Yes”, 否则,输出“No”。主对角线为从矩阵的左上角至右下角的连线,方阵a中的所有元素都沿主对角线对称指对所有i, k,a[i][k]和a[k][i]相等 一。实验代码 二,截图 三, ...
分类:
编程语言 时间:
2019-03-22 16:56:16
阅读次数:
229
软件工程上老师讲流程图时,要求画冒泡排序和选择排序的流程图 问题来了,故想基于百度两种排序后,自我总结的写些什么 请将一维数组a[n] 里面的 n个元素 升序排好 两种排序的共同点: 外循环:趟数(n-1) for( i=0; i<n-1; i++ ) 内循环:比较次数(在n-1基础上, 每趟后, ...
分类:
编程语言 时间:
2019-03-22 00:35:07
阅读次数:
183
1、冒泡排序 思想:比较相邻的前后两个数据,如果前面的大于后面的,就交换两个数据位置,知道遍历完数组,排序完成。 实现: 2、选择排序 思想:第一次遍历数组找出最小的值与第一个元素交换,第二次遍历N-1个数据,找出最小的值与第二个元素交换,直到排序完成。 实现: 3、快速排序 思想:先从数组找设置一 ...
分类:
编程语言 时间:
2019-03-21 14:23:40
阅读次数:
132
选择排序算法1.原理选择排序和冒泡排序类似,但是选择排序是采用一个变量来接受最小值的下标,因此每一趟比较只需要交换一次数组元素即可。2.举例数组a[]={21,3,44,22},用选择排序算法升序排序。设置一个变量min来接受最小值下标,min初始值为0,即a[min]=a[1]第一趟:a[1]与a[min]比,3小于21,于
分类:
编程语言 时间:
2019-03-20 13:12:07
阅读次数:
133