关闭

排 序

670人阅读 评论(0) 收藏 举报
排 序 浏览次数:440   更新日期:2006-2-14 15:45:10 1 冒泡排序法(Bubble Sort) 冒泡排序法又称为交换排序法(Interchange Sort)。顾名思义,就是在排序的时候,让较大的元素往下沉,或较小的元素往上浮。其排序处理程序是从元素的开始位置起,相邻的两个元素相比较,若第i个的元素大于第(i+1)的元素,则两元素互换,比较过所有的元素后,最大的元素将会沉到最底部。 算法: Data:

2 线性选择排序法(Linear Selection Sort) 线性选择排序法是每执行一趟(Pass)排序便从数组中选择最小的数据,然后把它依序存入输出数组中。在第一趟排序时(Pass1),我们先设Lower为p[0],而address为0,然后从第1个数据开始依序比较,直到找到较小值:(Lower:95)(注:(Lower:95)表示Lower值与 95 比较,以下类推),(Lower:27),(Lower:75),(Lower:42),(Lower:69),(Lower:34),(Lower:16),(Lower:9),此时找到较小值9,然后把Lower设成新的较小值9,同时将Lower值的位置指定给address(即address=8)。Lower及address设成新值后,再继续比较取代,直到所有数组数据都选择过。因此在一趟排序后,Lower 值为最小值,同时address为最小值的位置,我们再把Lower值存放入输出数组q,且把p[address] 的数据设成MAXNUM(最大数),不过在下面表示为“Z”,此后在说明时,都以“Z”代表MAXNUM。 Data:

3 交换-线性选择排序法(Linear Selection With Exchange Sort) 交换-线性选择排序法是利用lower及address来决定每一趟排序的最小值及最小值的位置,但每一趟排序后所找到的最小值直接和上限的数据互换。每趟排序后,都得到一个较小数据,而且以数据互换的操作,把较小数据存入正确位置,因此紧接下一趟排序都会减少一个扫描数据,第i趟排序从数组的第i个数据开始扫描,而第i个数据设为lower。 Data:

0
0

  相关文章推荐
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:42608次
    • 积分:971
    • 等级:
    • 排名:千里之外
    • 原创:50篇
    • 转载:4篇
    • 译文:0篇
    • 评论:1条
    最新评论