- 5
- 0
- 约2.65千字
- 约 23页
- 2018-11-09 发布于浙江
- 举报
快速排序-pt课件
快速排序导入 快速排序导入 – 冒泡排序过程 快速排序导入 – 冒泡排序过程 快速排序导入 – 冒泡排序过程 快速排序导入 快速排序导入 – 冒泡排序分析 对所有记录从左到右每相邻的元素进行比较 ,不符合要求则交换 快速排序导入 – 冒泡排序分析 快速排序导入 – 冒泡排序分析 快速排序思想 快速排序思想 快速排序讲解 快速排序讲解 快速排序讲解 快速排序讲解 快速排序讲解 快速排序讲解 快速排序讲解 快速排序完整代码 快速排序完整代码 算法分析 练习题 快速排序 作者:杨劲松 内容提要 快速排序导入 快速排序思想 快速排序讲解 快速排序算法分析 练习题 退出 请同学们使用冒泡排序的方法将下列数据排序:(从小到大) 21 25 49 16 25 06 目录 初始状态 第一次交换结束 目录 第二次交换 第二次交换结束 目录 第三次交换结束 第二次交换结束 第四次交换结束 目录 第六次交换结束 第五次交换结束 请同学们说说 冒泡排序是如何工作的 目录 冒泡排序的基本做法: 思考:在数据为以下排列时,冒泡的排序效果好不好? 49 25 25 21 16 06 初始状态是反序的,则需要进行n-1趟扫描 目录 从直观上49移动到最终的位置经过了n-1次比较和交换 49 25 25 21 16 06 06 16 21 25 25 49 能不能不经过n-1次比较和交换呢? 不能?这是由于冒泡排序中需要相邻的元素两两比较、交换 目录 基本思想: 1)寻找一个中心元素(通常为第一个数) 2)将小于中心点的元素移动至中心点之前,大于中心点的元素移动至中心点之后。 3)对上步分成的两个无序数组段重复1)、2)操作直到段长为1。 t t =t 目录 以21为中心元素 划分可得: 以06、49为中心元素 划分可得: 目录 选取中心元素的问题 选取第一个数为中心元素 如何划分问题 如何重复步骤①②将所有数据排序 使用递归 目录 当已知中心元素的前提下,怎样将其他元素划分好?(即:大于中心点在之后,小于中心点在之前) 需要解决的问题 i [0] [1] [2] [3] [4] [5] i=0 i=1 j=5 j=5 j i=1 j=3 i=1 j=4 i=2 j=3 i=2 j=2 算法终止 目录 请同学们思考 该算法有没有可以改进的地方 目录 i [0] [1] [2] [3] [4] [5] i=0 i=1 j=5 j=5 j i=1 j=3 i=1 j=4 i=2 j=3 i=2 j=2 算法终止 通过动画,可以看出每次中心元素都要交换。根据划分的思想最后位置一定是中心元素 可以申请一个变量保存中心元素,以避免交换 目录 i=left;j=right;int temp=a[left]; do { //从右向左找第1个不小于中心元素的位置j while( a[j] temp ij) j--; if(ij) { a[ I ] = a[ j ]; i++; } a[i]=temp; left,right用于限定要排序数列的范围,temp即为中心元素 程序填空 当前元素小于中心元素结束循环时,应当在中心元素的左边 移至左边 目录 //从左向右找第1个不大于中心元素的位置i while(a[i]temp ij ) i++; if(ij) { a[j]=a[i]; j--; } }while(ij); a[i]=temp; //将中心元素t填入最终位置 程序填空 目录 函数头:quicksort(int a[],int left,int right) 初始化:i=left;j=right;int temp=a[left]; 划分:do{一次划分} while(ij); 中心元素填入:a[i]=temp; 递归地对剩余段作快速排序 quicksort(a,left,i-1); quicksort(a,i+1,right); 目录 void quicksort(int a[],int left,int right) { int i,j; if(leftright) { i=left;j=right; int temp=a[left]; do { while(a[j]temp ij) j--; if(ij) { a[i]=a[j]; i++; } 目录 while(a[i]temp ij) i++; if(ij) { a[j]=a[i]; j--; } }while(ij); a[i]=temp; quicksor
您可能关注的文档
- 开学第一课--主题会--如何收心.pptx
- 开学第一课安教育讲话.doc
- 开学第一课防安全教案.doc
- 开学第一课:交安全教育.ppt
- 开学第二周情通报(精选多篇).doc
- 开封市求实中学2016年1月23日升初数学AB试卷.doc
- 开展“爱学习、劳动、爱祖国”活动总结.doc
- 开展“开学一课”禁毒教育活动工作简报.doc
- 开学第一课安全教育主题班会PT课件.ppt
- 开展中国特色社会主义和中国梦习教育活动实施方案.doc
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
最近下载
- Leica_TS16_UM_v2-0-0_zh-徕卡实用说明书.pdf VIP
- 医院感染暴发控制标准2025版课件.pptx VIP
- 医学免疫学(全套课件272P)ppt课件.pptx VIP
- 古建筑安全监测技术标准.pdf VIP
- A4版2023安徽省中考数学答题卡.pdf
- Vaillant威能VIH CN 水罐参数技术参数.pdf
- 喷墨打印OLED技术全球竞争格局与发展策略.docx VIP
- 2025年9月山西医科大学附属晋中医院(晋中市第一人民医院)招聘编制外人员38人笔试模拟试题及答案解析.docx VIP
- 2025年9月山西医科大学附属晋中医院(晋中市第一人民医院)招聘编制外人员38人考试参考试题及答案解析.docx VIP
- 人教版物理8年级下册全册教学课件.pptx
原创力文档

文档评论(0)