数据结构与算法
文章平均质量分 64
不靠谱的官方说法
这个作者很懒,什么都没留下…
展开
-
排序算法之冒泡排序
1、基本思想: (1)假设待排序表长为n,从后往前(或从前往后)两两比较相邻元素的值,若为逆序(L.r[i-1]>L.r[i]),则交换它们,直到序列比较完毕。我们称此过程为一趟排序,结果将最小的元素交换到待排序列的第一个位置。 (2)然后进行第二趟冒泡排序,前一趟确定的最小元素不再参与比较,待排序列减少一个元素,每趟冒泡的结果把序列中的最小元素放在了序列的最终位...原创 2019-01-12 17:24:54 · 518 阅读 · 0 评论 -
排序算法之快速排序
1、基本思想: 快速排序是对冒泡排序的一种改进。 在待排序表L[1...n]中任取一个元素pivot(通常可选第一个记录L[1]作为枢轴(或交点)),通过一趟排序,将待排序表划分为独立的两部分L[1...k-1]和L[k+1...n],使得L[1...k-1]中所有元素小于pivot,L[k+1...n]中所有元素大于或等于pivot,则pivot放在了其最终位置L...原创 2019-01-17 22:10:50 · 334 阅读 · 0 评论 -
排序算法之直接插入排序
1、基本思想: 已知待排序列r[1...n],先将序列中的第一个记录看成是一个有序的子序列,然后从第二个记录起逐个进行插入,直至整个序列变成关键字非递减有序序列为止。 具体操作如下: (1)查找出r[i]在有序序列r[1...i-1]中的插入位置k; (2)将r[k...i-1]中所有元素全部后移一个位置; (3)将r[i]复制到r[k],则原r[1....原创 2019-01-18 17:45:32 · 337 阅读 · 0 评论