2015年苏州大学872真题整理

一.数据结构部分

1、(15分)判断下列论述是否正确,如果有错,请指出错误之处。
(1)若有一个栈的输入序列是1,2,3,…,100,输出序列的第一个元素是100,则第50个输出元素是50

错误;栈顶元素为100,则第i个出栈的元素应为100-i+1,即第50个出栈的是51

(2)在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和

正确

(3)在拓扑排序序列中,任意两个结点i和j,都存在从i到j的路径

错误;若i与j同时为一个结点的直接前驱,则i与j之间不存在路径

(4)在哈希表中,装填因子的值越小,存取元素时发生冲突的可能性就越小

正确

(5)任何一个无向连通图的最小生成树只有一棵

错误;起始结点的选择会影响最小生成树的结构

2、(15分)简述堆排序算法的基本思想。对于快速排序而言,堆排序有哪些优势? 对于归并排序而言;堆排序有哪些优势? 假定8000个整数,需要找出最大的10个数,在堆排序、快速排序、基数排序方法中,采用哪种方法最好?请说明理由。

① 以大根堆为例:任意一个非根结点的值小于等于其双亲结点的值;以数学表达:L(i)≥L(2i)L(i)≥L(2i+1)

② 对于快速排序而言,堆排序优势是:快速排序的最坏情况会达到

你可能感兴趣的:(算法,数据结构,1024程序员节)