数据结构和算法 | 35套
以下问题已在 GATE CS 2014 考试中提出。
1) 下面加权图的不同最小生成树的数量是____
答案:6
突出显示的(绿色)是用来制作 MST 的边缘。在 MST 的右侧,我们可以选择边 'a' 或 'b'。在左侧,我们可以在 MST 中选择“c”或“d”或“e”。
有 2 个选项可用于拾取一条边,并有 3 个选项可用于拾取另一条边。因此,总共有 2*3 个可能的 MST。
2) 考虑以下有根树,顶点 P 标记为根
在中序遍历期间访问节点的顺序是
(A) SQPTRWUV
(B) SQPTURWV
(C) SQPTWUVR
(D) SQPTRUWV
答案:(一)
这个问题唯一的困惑是,R 有 3 个孩子。那么 R 应该什么时候出现——在 U 之后还是在 R 之后?有两种可能:SQPTRWUV 和 SQPTWURV。只有第一种可能性作为选项 A 存在,第二种可能性不存在。因此选项A为正确答案。
3) 设 A 是一个大小为 nx n 的方阵。考虑以下程序。什么是预期的输出?
C = 100
for i = 1 to n do
for j = 1 to n do
{
Temp = A[i][j] + C
A[i][j] = A[j][i]
A[j][i] = Temp - C
}
for i = 1 to n do
for j = 1 to n do
Output(A[i][j]);
(A)矩阵 A 本身
(B)矩阵 A 的转置
(C) A的上对角线元素加100,A的对角线元素减100
(D)以上都不是
答案:A
如果我们看一下第一个循环的内部语句,我们可以注意到语句交换了所有 i 和 j 的 A[i][j] 和 A[j][i]。
由于循环对所有元素运行,每个元素 A[l][m] 将被交换两次,一次用于 i = l 和 j = m,然后用于 i = m 和 j = l。交换两次意味着矩阵不会改变。
4) 对于给定的 X 值,仅使用一个临时变量计算多项式 P(X) = X 5 + 4X 3 + 6X + 5 所需的最少算术运算次数。
(一) 6
(乙) 7
(三) 8
(四) 9
答案:B
我们可以将多项式括起来以最小化操作次数(参见霍纳方法)。括号后我们得到 X(X 2 (X 2 + 4) + 6) + 5。
Following is sequence of operations to be used.
Note that we are allowed to use only one variable.
res = X*X
res = res + 4
res = X*res
res = X*res
res = res + 6
res = X*res
res = res + 5
5) 你有一个 n 个元素的数组。假设您通过始终选择数组的中心元素作为枢轴来实现快速排序。那么最坏情况性能的最严格的上限是
(A) O(n 2 )
(B) O(nLogn)
(C) Θ(nLogn)
(D) O(n 3 )
答案:(一)
中间元素可能始终是排序顺序中的极端元素(最小值或最大值),因此最坏情况下的时间复杂度变为 O(n 2 )
查看 GATE Corner 了解所有往年论文/解决方案/解释、教学大纲、重要日期、注释等。