2011年4月15日

《大话数据结构》第9章 排序 9.3 冒泡排序(下)

摘要: 9.3.2冒泡排序算法 我们来看看正宗的冒泡算法,有没有什么改进的地方。/*对顺序表L作冒泡排序*/voidBubbleSort(SqList*L){inti,j;for(i=1;i<L->length;i++){for(j=L->length-1;j>=i;j--)/*注意j是从后往前循环*/{if(L->r[j]>L->r[j+1])/*若前者大于后者(注意这里与上一算法差异)*/{swap(L,j,j+1);/*交换L->r[j]与L->r[j+1]的值*/}}}} 依然假设我们待排序的关键字序列是{9,1,5,8,3,7,4,6,2 阅读全文

posted @ 2011-04-15 11:41 伍迷 阅读(4562) 评论(8) 推荐(5) 编辑

《大话数据结构》第9章 排序 9.3 冒泡排序(上)

摘要: 9.3.1最简单排序实现 无论你学习哪种编程语言,在学到循环和数组时,通常都会介绍一种排序算法来作为例子,而这个算法一般就是冒泡排序。并不是它的名称很好听,而是说这个算法的思路最简单,最容易理解。因此,哪怕大家可能都已经学过冒泡排序了,我们还是从这个算法开始我们的排序之旅。 冒泡排序(Bubble Sort)一种交换排序,它的基本思想是:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。冒泡的实现在细节上可以很多种变化,我们将分别就3种不同的冒泡实现代码,来讲解冒泡排序的思想。这里,我们就先来看看比较容易理解的一段。/*对顺序表L作交换排序(冒泡排序初级版)*/voidBubb 阅读全文

posted @ 2011-04-15 08:42 伍迷 阅读(3310) 评论(4) 推荐(3) 编辑

导航