科目组合
数据结构 、计算机组成原理 、操作系统 、计算机网络
若元素a, b, c, d, e, f依次进栈,允许进栈、退栈操作交替进行,但不允许连续三次进行退栈操作,则不可能得到的出栈序列是( )。
A. d, c, e, b, f, a
B. c, b, d, a, e, f
C. b, c, a, e, f, d
D. a, f, e, d, c, b
某队列允许在其两端进行入队操作,但仅允许在一端进行出队操作,若元素a, b, c, d, e依次入此队列后再进行出队操作,则不可能得到的出队序列是( )。
A. b, a, c, d, e
B. d, b, a, c, e
C. d, b, c, a, e
D. e, c, b, a, d
在下图所示的平衡二叉树中,插入关键字48后得到一棵新平衡二叉树。在新平衡二叉树中,关键字37所在结点的左、右子结点中保存的关键字分别是( )。
A. 13, 48
B. 24, 48
C. 24, 53
D. 24, 90
在一棵度数为4的树 T 中,若有20个度为4的结点,10个度为3的结点,1个度为2的结点,10个度为 1 的结点,则树 T 的叶结点个数是( )。
A. 41
B. 82
C. 113
D. 122
对 n(n≥2) 个权值均不相同的字符构成哈夫曼树。下列关于该哈夫曼树的叙述中,错误的是( )。
A. 该树一定是一棵完全二叉树
B. 树中一定没有度为 1 的结点
C. 树中两个权值最小的结点一定是兄弟结点
D. 树中任一非叶结点的权值一定不小于下一层任一结点的权值
采用递归方式对顺序表进行快速排序。下列关于递归次数的叙述中,正确的是()。
A.递归次数与初始数据的排列次序无关。
B.每次划分后,先处理较长的分区可以减少递归次数。
C.每次划分后,先处理较短的分区可以减少递归次数。
D.递归次数与每次划分后得到的分区的处理顺序无关。
对一组数据(2,12,16,88,5,10)进行排序,若前三趟排序结果如下:
第一趟排序结果:2,12,16,5,10,88
第二趟排序结果:2,12,5,10,16,88
第三趟排序结果:2,5,10,12,16,88
则采用的排序方法可能是()。
A. 起泡排序
B. 希尔排序
C.归并排序
D.基数排序
将关键字序列 〈7,8,30,11,18,9,14〉 散列存储到散列表中。散列表的存储空间是一个下标从 0 开始的一维数组,散列函数为 H(key)=(key×3)mod7 ,处理冲突采用线性探测再散列法,要求装填(载)因子为 0.7 。
⑴ 请画出所构造的散列表。
⑵ 分别计算等概率情况下查找成功和查找不成功的平均查找长度。
设将 n(n>1) 个整数存放到一维数组 R 中。试设计一个在时间和空间两方面都尽可能高效的算法。将 R 中保存的序列循环左移 P(0<P<N) 个位置,即将 R 中的数据由 〈X0,X1,…,Xn−1〉 变换为 〈Xp,Xp+1,…,Xn−1,X0,X1,…,Xp−1〉 。要求:
⑴ 给出算法的基本设计思想。
⑵ 根据设计思想,采用C或C++或Java语言描述,关键之处给出注释。
⑶ 说明你所设计算法的时间复杂度和空间复杂度。