-
课程设计中涵盖多种数据结构及各类排序算法
资源介绍
数据结构课程设计 各种排序算法
三、 算法设计的思想
插入排序
<1> 基本思想
插入排序的思想就是读一个,排一个,将第1个数放入数组的第1个元素中,以后读入的数与已存入数组的数进行比较,确定它在从大到小的排列中应处的位置.将该位置以及以后的元素向后推移一个位置,将读入的新数填入空出的位置中.
希尔排序
<1> 基本思想
希尔排序法是1959年由D.L.Shell提出来的,又称减少增量的排序。下表是以八个元素排序示范的例子.在该例中,开始时相隔4个成分,分别按组进行排序,这时每组2个成分,共4组; 然后相隔2个成分,在按组排序......最后,对所有相邻成分进行排序.
冒泡排序
<1> 基本思想
依次比较相邻的两个数,把大的放前面,小的放后面.即首先比较第1个数和第2个数,大数放前,小数放后.然后比较第2个数和第3个数......直到比较最后两个数.第一趟结束,最小的一定沉到最后.重复上过程,仍从第1个数开始,到最后第2个数.然后......
由于在排序过程中总是大数往前,小数往后,相当气泡上升,所以叫冒泡排序.
快速排序
<1> 基本思想
快速排序的基本思想是基于分治策略的。对于输入的子序列L[p..r],如果规模足够小则直接进行排序,否则分三步处理:
分解(Divide):将输入的序列L[p..r]划分成两个非空子序列L[p..q]和L[q+1..r],使L[p..q] 中任一元素的值不大于L[q+1..r]中任一元素的值。
选择排序
<1> 基本思想
每一趟在n-i+1(i=1,2,,n-1)各记录中选取关键字最小的记录作为有序序列中第i 个记录
- 上一篇: 各种内部排序算法的比较
- 下一篇: 数据结构内部排序算法比较.doc