一、冒泡排序 遍历一个数组,如果发现数组中相邻的两个元素不满足要求时,就调整他们的次序,直达最后没有需要调整时说明数组有序。 二、选择排序 三、插入排序 四、希尔排序 五、归并排序 六、快速排序 ...
分类:
编程语言 时间:
2019-10-15 11:42:03
阅读次数:
85
选择排序(Selection sort)是一种简单直观的排序算法。它首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 也就是:n个数从左至右,索引从0开始到n-1,两两依次比 ...
分类:
编程语言 时间:
2019-10-14 12:18:44
阅读次数:
95
选择排序的原理 选择排序的原理是首先取第一个数字作为数组中的最小者minValue(以升序排序为例),依次跟后续数字进行比较,如果发现有比minValue更小的数字,记录该数字的下标,并将该数字的值赋给minValue,直到遍历完数组的最后一个数字。然后根据记录的实际最小值的下标,跟第一个数字进行交 ...
分类:
编程语言 时间:
2019-10-13 13:12:42
阅读次数:
109
最近正好计导和c语言都讲到排序问题,以前都是了解概念之后直接用sort,这次把各种排序算法都代码实现一下。 题目传送门 插入排序 把序列分成两部分,前一部分为已排好序部分,后一部分未排序。(初始1~1为已排序部分,2~n为未排序部分) 然后从未排序部分中取一个数,将其加入已排序部分的对应位置中。 代 ...
分类:
编程语言 时间:
2019-10-12 20:45:12
阅读次数:
78
一、选择排序原理: 选择排序(Selection sort)是一种简单直观的排序算法。第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳 ...
分类:
编程语言 时间:
2019-10-11 23:12:21
阅读次数:
93
先来看看8种排序之间的关系: 一、直接插入排序 代码如下 二、希尔排序 第三、简单选择排序 第四、堆排序 第五、冒泡排序 第六、快排 第七、归并排序 第八、基数排序 参考:https://blog.csdn.net/jiangwei0910410003/article/details/3826178 ...
分类:
编程语言 时间:
2019-10-10 19:51:26
阅读次数:
102
参考文章:https://mp.weixin.qq.com/s/VjqZNPg6dAEReAzqZcb_yw 原文链接:www.jianshu.com/p/5e171281a387 ...
分类:
编程语言 时间:
2019-10-09 12:39:53
阅读次数:
75
从某个源点到其余各顶点的最短路径 迪杰斯特拉(Dijkstra)算法 迪杰斯特拉算法是一个按路径长度递增的次序产生最短路径的算法。(负值圈该算法无效) 算法描述: 该算法最终的得到的是一个递增的最短路径序列,每次循环中是先找到剩余路径中的最短的一条,再更新一下剩余的最短路径,好像一个选择排序一样,每 ...
分类:
其他好文 时间:
2019-10-08 14:12:42
阅读次数:
92