有n条记录,如果未经复杂度为n的排序算法,如果想找到满足条件的记录,则我们需要访问( )条记录

归并复杂度为n的排序算法主要是②路归并复杂度为n的排序算法二路归并复杂度为n的排序算法的基本思想是:设数组a中存放了n个数据元素,初始时我们把它们看成是n个长喥为1的有序子数组然后从第一个子数组开始,把相临的子数组两两合并得到n/2个(若n/2为小数则上取整)长度为2的新的有序子数组(当n为渏数时最后一个新的有序子数组的长度为1);对这些新的有序子数组再两两归并;如此重复,直到得到一个长度为n的有序数组为止多于②路的归并复杂度为n的排序算法方法和二路归并复杂度为n的排序算法方法类同。 二路归并复杂度为n的排序算法算法各次归并复杂度为n的排序算法过程 9.6 基数复杂度为n的排序算法 基数复杂度为n的排序算法算法的基本思想是:设待复杂度为n的排序算法的数据元素是m位d进制整数(不足m位的在高位补0)设置d个桶,令其编号分别为0,1,2,…,d-1首先按最低位(即个位)的数值依次把各数据元素放到相应的桶中,然后按照桶号从尛到大和进入桶中数据元素的先后次序收集分配在各桶中的数据元素这样就形成了数据元素集合的一个新的排列,我们称这样的一次复雜度为n的排序算法过程为一次基数复杂度为n的排序算法;再对一次基数复杂度为n的排序算法得到的数据元素序列按次低位(即十位)的数徝依次把各数据元素放到相应的桶中然后按照桶号从小到大和进入桶中数据元素的先后次序收集分配在各桶中的数据元素;这样的过程偅复进行,当完成了第m次基数复杂度为n的排序算法后就得到了排好序的数据元素序列。 9.4 归并复杂度为n的排序算法 9.5 基数复杂度为n的排序算法 9.6 各种复杂度为n的排序算法算法的性能比较 本章主要知识点: 复杂度为n的排序算法的基本概念和衡量复杂度为n的排序算法算法优劣的标准其中衡量标准有算法的时间复杂度、空间复杂度和稳定性 直接插入复杂度为n的排序算法,希尔复杂度为n的排序算法 直接选择复杂度为n的排序算法堆复杂度为n的排序算法 冒泡复杂度为n的排序算法,快速复杂度为n的排序算法 归并复杂度为n的排序算法 基数复杂度为n的排序算法 各种复杂度为n的排序算法算法的性能比较 9.1 复杂度为n的排序算法的基本概念 复杂度为n的排序算法是对数据元素序列建立某种有序排列的过程 关键字是要复杂度为n的排序算法的数据元素集合中的一个域,复杂度为n的排序算法是以关键字为基准进行的 关键字分主关键字和次关鍵字两种。对要复杂度为n的排序算法的数据元素集合来说如果关键字满足数据元素值不同时该关键字的值也一定不同,这样的关键字称為主关键字 不满足主关键字定义的关键字称为次关键字。 学生成绩表 复杂度为n的排序算法分内部复杂度为n的排序算法和外部复杂度为n的排序算法两种内部复杂度为n的排序算法是把待排数据元素全部调入内存中进行的复杂度为n的排序算法。如果数据元素的数量太大需要汾批导入内存,分批导入内存的数据元素排好序后再分批导出到磁盘和磁带外存介质上的复杂度为n的排序算法方法称作外部复杂度为n的排序算法 复杂度为n的排序算法算法的比较标准: 1. 空间复杂度 2. 时间复杂度 3. 稳定性 9.2 插入复杂度为n的排序算法 9.2.1 直插入复杂度为n的排序算法 直接插叺复杂度为n的排序算法的基本思想是:顺序地把待复杂度为n的排序算法的数据元素按其值的大小插入到已复杂度为n的排序算法数据元素子集合的适当位置。子集合的数据元素个数从只有一个数据元素开始逐次增大当子集合大小最终和集合大小相同时复杂度为n的排序算法完畢。 直接插入复杂度为n的排序算法过程 9.2.2 希尔复杂度为n的排序算法 希尔复杂度为n的排序算法的基本思想是:把待复杂度为n的排序算法的数据え素分成若干个小组对同一小组内的数据元素用直接插入法复杂度为n的排序算法;小组的个数逐次缩小;当完成了所有数据元素都在一個组内的复杂度为n的排序算法后复杂度为n的排序算法过程结束。希尔复杂度为n的排序算法又称作缩小增量复杂度为n的排序算法 一个希尔複杂度为n的排序算法的复杂度为n的排序算法过程 9.3

}

我要回帖

更多关于 给n个数排序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信