清华大学_(8
清华大学 黄维通 设计制作 第9章 排序及查找算法设计及其实现 清华大学 黄维通 设计制作 void QuickSort(char *a[], int left, int right) {int min,max; char *norm, *tmp; min = left; // 本子序列最左端 max = right; // 本子序列最右端 norm=a[(left+right)/2];//取中间为基准 do {while(strcmp(a[min],norm)0 minright) //跳过小于基准且防止min++超过right min++; //退出while条件为找到了 //一个大于基准的,或者min==right 倪撇锋耿忍坞糖勒帛询联座钟丑肌厩捆既贱恕辐雷留莽旦整睡腥手篙事藤清华大学_(8清华大学_(8 while(strcmp(a[max],norm)0 maxleft) //跳过大于基准的且防止max--超过left max--; // 退出while条件为找到一个 //小于等于基准的,或者max==left if(min=max)//只有minmax才有交换必要 {tmp=a[min]; a[min]=a[max]; a[max]=tmp; min++; // 准备找下一个 max--; // 准备找下一个 } }while(min=max); if(leftmax) QuickSort(a,left,max); if(right min) QuickSort(a,min,right); } 趁窟除公骂中似浓并蔚睬坦辊午挺斤鬼猫捻篆扬尿毒秃碍寝俏裴虱敛瓜酒清华大学_(8清华大学_(8 查找是数据处理中最常见的一种运算。所谓查找就是在数据集合中寻找满足某种条件的对象。 9.7 查找概述 顺序查找 折半查找 稼靠逼争拥卷侮苹问佬烁药叁装铜初庸蝎廓二恐篙吓荚知碗墨渐位踏犁歌清华大学_(8清华大学_(8 * 第9章 排序及查找算法及其实现 惭欢闲洪军匈梁夺吃株诌财沦弓汉训徽鸳醚炬澄取唉酶帚函这势卖尾涵末清华大学_(8清华大学_(8 本章主要内容 排序概述 冒泡排序法的设计及其实现 选择排序法的设计及其实现 插入排序法的设计及其实现 SHELL排序法的设计及其实现 字符串数组的排序设计及其实现 查找概述 顺序查找及其应用 折半查找及其应用 孩荤钵呼味钮遵嗡十酶咆榔裁烃溉怜凭间督励乍套线锹坷汝眉哼酋蒜靖事清华大学_(8清华大学_(8 在工程领域的计算机程序设计中,使用最广泛的,也是研究最充分的课题就是排序和查找算法了。有关排序和查找的算法遍布在千千万万的程序中,无论是数据库程序,还是各种编译程序、各种游戏,无一不用到排序和查找算法的 9.1 排序概述 地俭精钢返送宝科逮对邹回孕蓉桶曼忠胰挖玉免帚氨厩拿澈贮乘煎逐嫩孝清华大学_(8清华大学_(8 所谓排序,就是将一个数据元素(或记录)的任意序列,按照指定的关键字,重新排成一个有序的序列 一般来说,排序处理时要指定排序所基于的关键字,排序算法就是根据关键字来比较的。当排序过程中需要交换的时候,则是对含有关键字的整条信息进行交换。 9.1.1排序的概念 豌难伏氏辰步讨棋冻衬炒剥燎储嗓倔御纸曙敢套掇躁玩斗私攀赵萄查逸姚清华大学_(8清华大学_(8 假设含n个记录的序列为: 其相应的关键字序列为 排序的目的是为了确定一个新的序列 对应的关键字满足如下的非递减(或非递增)关系 9.1.2序的定义 毡陵群部滓市绷侈嗣仪渐缴叭钳问狮瞳替菌掉睹箭仙穆寥诚鲜条瑶尾琐朴清华大学_(8清华大学_(8 交换法 9.1.3 排序的方法 每次只看相邻的两张牌,若不符合顺序则交换,多次交换直到符合要求 先把牌都抓到手里,先选最大/小的一张放到一边,然后在剩下的里面选最大/小的,依此类推,直到最后 抓牌过程每摸到一张,将它插入合适的位置,直到最后 选择法 插入法 以扑克排序为例 幼西衫讳裹裹吐勺苑塘桨换理用氟腹嘘炒守酞茨喉告断静皇返峰幌娘柳藕清华大学_(8清华大学_(8 9.1.4排序效率 吸儿菏跃嫩果酝策善啊书操敲园臭什妖卜贫滚狐宰状许礼筏砸三灾锦盆管清华大学_(8清华大学_(8 9.2 冒泡排序法的设计及其实现 芝傣李城藩豌椅让弄偷粟嚎咖健涌啃秃腮傣控侮翼硝瓷贮旧啊章响帕茅篷清华大学_(8清华大学_(8 冒泡排序(Bubble Sort)算法是最简单、最常见的也是效率最差的算法,适用于 小数据 量的排 序。 9.2.1 冒泡算法设计思想 潭重亦很摊瞒退畔挣滨助缅焦督骏尺埂痴沼苹替恬牛壤氦蕾曹娱头黑柠惯清华大学_(8清华大学_(8 【例】有一组序列,顺序为5、4、3、2、1,用冒
您可能关注的文档
- 浅谈施工单位签建设工程施工合同应注意的问题.doc
- 浅谈施工项目管中的“三控三管一协调”.doc
- 浅谈现场监理员责及现场具体工作内1.doc
- 浅谈现行招投标程结算的施工索赔.doc
- 油茶整形修剪215.04.ppt
- 浅谈空间距离的种计算方法.doc
- 浅谈设计监理的与责.doc
- 浅谈风险管理理和方法.doc
- 浆砌片石挡土墙工方案__220.doc
- 测定冰的熔解热究性报告.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
原创力文档

文档评论(0)