GATE 2018 CS 组 3

17 Mar 2025 | 4 分钟阅读

1) 以下哪一个是序列 {an} 的生成函数的闭合形式表达式,其中所有 n = 0, 1, 2,... 的 an = 2n + 3?

  1. 3/(1-x)2
  2. 3x/(1-x)2
  3. 2-x/(1-x)2
  4. 3-x/(1-x)2

答案: D

说明

给定 an = 2n + 3

序列 an 的生成函数 G(x) 是
GATE CS Set 3

展开上述函数,我们得到,
= 2(0+x+2x2+3x3+.....) + 3(1+x+x2+......)
现在我们取 (0+x+2x2+3x3+.....)
= x (1 + 2x + 3x2 + .....)
= x / (1-x)2
同样,1+x+x2+..... = 1 / (1-x)

现在将这些值代入 G(x) 我们得到,
G(x) = 2(x/(1-x)2) + 3(1 / 1-x )
        = 2x+3-3x / (1-x)2)
        = 3-x / (1-x)2

因此,正确的选项是 (D)。


2) 考虑以下 C 程序。

该程序的输出是

  1. 0, c
  2. 0, a+2
  3. '0', 'a+2'
  4. '0', 'c'

答案: A

说明

char 'a' + 2 将变成 'c'
所以,Ournode p = {'1','0','c'}
*((char*)q+1) == p[1]
*((char*)q+2) == p[2]
printf("%c, %c", *((char*)q+1), *((char*)q+2));
因此,输出 = 0,c
因此,正确的选项是 (A)。


3) 队列是使用非循环单链表实现的。 队列有一个头指针和一个尾指针,如图所示。 令 n 表示队列中的节点数。 让“enqueue”通过在头部插入一个新节点来实现,让“dequeue”通过从尾部删除一个节点来实现。

GATE CS Set 3

以下哪一个是此数据结构的“enqueue”和“dequeue”的最有效时间复杂度?

  1. Θ(1), Θ(1)
  2. Θ(1), Θ(n)
  3. Θ(n), Θ(1)
  4. Θ(n), Θ(n)

答案: B

说明

创建新节点 N

Enqueue(){
       N -> Data = Data
       N -> Next = Head
       Head = N
}

在此入队操作中,仅涉及指针操作,这需要恒定的时间量。

因此,时间复杂度 = O(1)

从尾部删除一个节点

对于出队操作,我们将单链表的倒数第二个节点的 next 指针设为 NULL。 在单链表中,我们无法访问它的上一个节点,因此我们需要遍历整个链表才能获得链表的倒数第二个节点,即

Dequeue(){
       temp = head
       While(temp -> Next -> Next != NULL)
         temp = temp->next
       temp -> next = NULL
       tail = temp
}

由于我们为每个出队操作遍历整个链表。

所以,时间复杂度 = O(n)


4) 令 ⊕ 和 ⊙ 分别表示异或运算和异或非运算。 以下哪一项不正确?

GATE CS Set 3

  1. A
  2. B
  3. C
  4. D

答案: D

说明

左侧,

     (p⊕p)⊕q = 1⊕q = 1.q' + 0.q = q'

右边

     (p⊙p')⊙(q') = 0⊙(q') = 0(q') + 1.(q')' = q

因此,LHS ≠ RHS 因此,选项 (D) 是正确的答案。


5) 考虑以下处理器设计特性。

I. 仅寄存器到寄存器的算术运算
II. 固定长度的指令格式
III. 硬连线控制单元

以上哪些特性用于 RISC 处理器的设计中?

  1. 仅 I 和 II
  2. 仅 II 和 III
  3. 仅 I 和 III
  4. I、II 和 III

答案: D

说明

在 RISC 中,指令长度不能变化。 它通常是固定的,为 32 位。 在 CISC 中,指令长度可以在 16 到 64 位之间。

仅当指令固定时才使用硬连线控制单元。

寄存器到寄存器的操作在 RISC 中始终是可能的。 CISC 可以同时具有寄存器到寄存器的操作和内存到内存的指令。


6) 令 N 为具有 n 个状态的 NFA。 令 k 为等效于 N 的最小 DFA 的状态数。 以下哪一项必然为真?

  1. k ≥ 2n
  2. k ≥ n
  3. k ≤ n2
  4. k ≤ 2n

答案: D

说明

如果 NFA 具有 n 个状态,则等效的 DFA 最多可以有 2n 个状态。

因此,最小 DFA 中的状态数 -> k ≤ 2n


7) 所有递归可枚举语言的集合是

  1. 在求补下封闭。
  2. 在交集下封闭。
  3. 所有递归语言集合的子集。
  4. 一个不可数的集合。

答案: B

说明

我们知道,递归可枚举语言在联合、交集、连接下封闭,但在求补下不封闭。

所以,我们可以很容易地说选项 (A) 是正确的答案。


8) 以下哪个陈述是错误的?

  1. 上下文无关文法可用于指定词法规则和语法规则。
  2. 类型检查在解析之前完成。
  3. 高级语言程序可以翻译成不同的中间表示。
  4. 可以使用程序堆栈将参数传递给函数。

答案: B

说明

类型检查在语义分析阶段执行,解析在语法分析阶段执行。 由于语法分析阶段先于语义分析,因此类型检查始终在解析之后完成。 因此,选项 (B) 是错误的,是正确的答案。


GATE 2018 CS Set 3-2
GATE 2018 CS Set 3-3
GATE 2018 CS Set 3-4
GATE 2018 CS Set 3-5
GATE 2018 CS Set 3-6
GATE 2018 CS Set 3-7
GATE 2018 CS Set 3-8
GATE 介绍
下一个主题GATE 2018 CS Set 3-2