例7 散列表查找散列函数 处理冲突——开放定址 P210 211 拉链法 P212 213 排序技术一、本章主要内容 排序的基本概念 插入排序 交换排序 起泡、快速 选择排序 简单选择、堆 归并排序 分配排序 各种排序算法的比较 二、本章习题 填空题排序的主要目的是为了以后对已排序的数据元素进行 【解答】查找【分析】对已排序的记录序列进行查找通常能提高查找效率。 对n个元素进行起泡排序 情况下比较的次数最少其比较次数为 情况下比较次数最多其比较次数为 对一组记录54 38 96 23 15 72 60 45 83 进行直接插入排序 当把第7个记录60插入到有序表时 为寻找插入位置需比较 【解答】3【分析】当把第7个记录60插入到有序表时 该有序表中有2个记录大于60。 对一组记录 54 38 96 23 15 72 60 45 83 进行快速排序 在递归调用中使用的栈所能达到的最大深度为 【解答】3对n个待排序记录序列进行快速排序 所需要的最好时间是 最坏时间是 【解答】Onlog2n n2利用简单选择排序对n个记录进行排序 最坏情况下 记录交换的次数为 如果要将序列50 16 23 68 94 70 73 建成堆 只需把16与 交换。 【解答】50 对于键值序列 12 13 11 18 60 15 1825 100 用筛选法建堆 必须从键值为 的结点开始。 【解答】60 【分析】60是该键值序列对应的完全二叉树中最后一个分支结点。 选择题下述排序方法中 比较次数与待排序记录的初始状态无关的是 A插入排序和快速排序B归并排序和快速排序 C选择排序和归并排序 D插入排序和归并排序 【解答】C 【分析】选择排序在最好、最坏、平均情况下的时间性能均为O n2 归并排序在最好、最坏、平均情况下的时间性能均为O nlog2n 下列序列中是执行第一趟快速排序的结果。 daax eb de bb ff ha gc cdeb ax da ff ha gc bb gcax eb cd bb ff da ha axbb cd da ff eb gc ha 【解答】A 【分析】此题需要按字典序比较 前半区间中的所有元素都应小于ff 后半区间中的所有元素都应大于ff。 对初始状态为递增有序的序列进行排序 最省时间的是 最费时间的是 。已知待排序序列中每个元素距其最终位置不远 则采用 方法最