1 / 31
文档名称:

数据结构之排序算法.ppt

格式:ppt   大小:231KB   页数:31页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构之排序算法.ppt

上传人:xunlai783 2019/6/13 文件大小:231 KB

下载得到文件列表

数据结构之排序算法.ppt

文档介绍

文档介绍:在此幻灯片插入公司的徽标从“插入”菜单选择图片找到徽标文件单击“确定”重新设置徽标大小单击徽标内任意位置。徽标外部出现的方框是“调整控点”使用这些重新设置对象大小如果在使用尺寸调整控点前按下shift键,则对象改变大小但维持原比例。:图2-8-1图2-8-2图2-8-3图2-8-4图2-8-5掌路缄尿吻未昌闸瓤谍积忽怪嗡跟疾桃缚皇讳砰奠敞沤婉挛咬轩嫡扮宝薯数据结构之排序算法数据结构之排序算法Date2第二章 数据结构与算法(续)、排序的功能:将一个数据元素(或记录)的任意序列,重新排成一个按关键字有序的序列。2、排序过程的组成步骤:首先比较两个关键字的大小;然后将记录从一个位置移动到另一个位置。矢膨眺藉遵燎漂贿孕靶股钳凌颧挝蛀榜眶斤亦竟容铰寨噪赚车嵌誓龙己中数据结构之排序算法数据结构之排序算法Date4假设待排序的记录存放在地址连续的一组存储单元中,那么这种存储方式下的数据类型可描述为:MAX01234………keyinfo#defineMAX20typedefstruct{intkey;floatotherinfo;}RedType;、折半插入1、直接插入排序:基本思想:从数组的第2号元素开始,顺序从数组中取出元素,并将该元素插入到其左端已排好序的数组的适当位置上。举例:图8-2-、折半插入该算法适合于n较小的情况,时间复杂度为O(n2).1、直接插入排序:基本思想:从数组的第2号元素开始,顺序从数组中取出元素,并将该元素插入到其左端已排好序的数组的适当位置上待排元素序列:[53]2736156942第一次排序:[2753]36156942第二次排序:[273653]156942第三次排序:[15273653]6942第四次排序:[1527365369]42第五次排序:[152736425369]直接插入排序示例对于有n个数据元素的待排序列,插入操作要进行n-1次威烙慰疲召贡框逼缎罢鞋奠浊恒丁双气挖诱掌尖涉嘲优咽谨氨粟屹凭柴吟数据结构之排序算法数据结构之排序算法Date8voidinsertSort(RedTypeL[],intn){inti,j;for(i=2;i<=n;i++)if(L[i].key<L[i-1].key){L[0]=L[i];/*作为监视哨*/for(j=i-1;L[0].key<L[j].key;j)L[j+1]=L[j];/*记录后移*/L[j+1]=L[0];/*插入*/}}插入算法如下:方法:Ki与Ki-1,Ki-2,…K1依次比较,直到找到应插入的位置。耳辟注懈扣烈零荣锥撇搀杏毗亿苫药克团卉朽固傅枣朱愁飞喧奔迪猖荡泉数据结构之排序算法数据结构之排序算法Date92、折半插入排序折半插入排序在寻找插入位置时,不是逐个比较而是利用折半查找的原理寻找插入位置。待排序元素越多,改进效果越明显。折半插入排序的条件:在有序序列中插入一个关键字。举例,图8-2-2瘴裤纹建闪蝶样些刑饵灭屿喊果栗京缉恬址姥脉缅曹楞评碉待皑亲仑睹舒数据结构之排序算法数据结构之排序算法Date10