导航菜单
首页 >  考研科目814是什么  > 西南科技大学814程序设计考研考题总结

西南科技大学814程序设计考研考题总结

设需要排序的7个初始关键字是:39,38,65,97,76,13,27。写出分别采用直接插入排序和快速排序的每一步过程。

直接插入排序直接插入排序的基本操作是将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增1的有序表。第一趟39(已排序)38与39比较,38小,交换位置:38,39(已排序)65与39比较,65大,不交换:38,39,65(已排序)97与65比较,97大,不交换:38,39,65,97(已排序)76与65比较,76大,不交换:38,39,65,97,76(已排序)13与39比较,13小,交换位置:13,38,39,65,97,76(已排序)27与38比较,27小,交换位置:27,13,38,39,65,97,76(已排序)结果:27,13,38,39,65,76,97快速排序快速排序的基本思想是:通过一次排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,然后分别对这两部分继续进行排序。选择基准值:这里我们选择第一个元素39作为基准值。分区:将比基准值小的元素放在它的左边,比基准值大的元素放在它的右边。39(基准值)38比39小,放在左边:38,3965比39大,放在右边:38,39,6597比39大,放在右边:38,39,65,9776比39大,放在右边:38,39,65,97,7613比39小,放在左边:13,38,39,65,97,7627比39小,放在左边:27,13,38,39,65,97,76递归排序子序列:对左右两个子序列分别进行快速排序。由于子序列已经是排好序的(这是最好情况),所以不需要进一步的操作。结果:27,13,38,39,65,76,97 哈希冲突

已知有一哈希表长度为9,哈希函数为 H(K)=K%9 (取模运算),给定的关键字集合(7,8,30,11,18,9,14,26),请计算集合中关键字的哈希地址,并用拉链法构建哈希表。

我们根据给定的哈希函数 H(K) = K % 9 来计算每个关键字的哈希地址:H(7) = 7 % 9 = 7H(8) = 8 % 9 = 8H(30) = 30 % 9 = 3H(11) = 11 % 9 = 2H(18) = 18 % 9 = 0H(9) = 9 % 9 = 0H(14) = 14 % 9 = 5H(26) = 26 % 9 = 8

拉链法

img

查找成功时的平均查找长度:

每层的个数*第几层/总个数

ASL = (1乘6+2乘4+3乘1+4乘1)/12 = 7/4

查找不成功时的平均查找长度:

总条数长度/哈希表长度

ASL = (4+2+2+1+2+1)/13

线性探測法

img

查找成功时的查找次数等于插入元素时的比較次数,查找成功的平均查找长度为:

总比较次数/总元素个数

ASL = (1+2+1+4+3+1+1+3+9+1+1+3)/12 = 2.5

查找成功时的查找次数:第n个位置不成功时的比較次数为,第n个位置到第1个没有数据位置的距离:如第0个位置取值为1,第1个位置取值为2.

查找不成功的平均查找长度为:

元素下标和/线性表长度

ASL = (1+2+3+4+5+6+7+8+9+10+11+12)/ 13 = 91/13

线性表

线性表的两种存储结构是什么,各有哪些优点与缺点?

线性表是一种常用的数据结构,它有两种主要的存储结构:顺序存储和链式存储。顺序存储:顺序存储结构是将线性表元素以元素的二进制地址为序,以数组形式存储在连续的物理空间中。这种存储方式的优点有:空间利用率高。因为元素是连续存储的,所以可以利用数组的索引快速访问任何元素。插入和删除操作方便。只需要移动元素的位置,不需要移动大量的元素。然而,顺序存储也有一些缺点:需要预先分配内存空间,可能会导致空间的浪费。如果线性表的实际元素数量小于预分配的空间,那么剩余的空间就不能被利用。无法动态地扩展线性表的长度。如果需要增加

相关推荐: