GATE 2011

2025 年 3 月 17 日 | 阅读 56 分钟

1) 在编译器中,语言的关键词是在以下哪个阶段被识别的?

  1. 程序解析
  2. 代码生成
  3. 程序的词法分析
  4. 数据流分析

答案:c

解释: 将符号序列转换为标记序列的过程是词法分析。

在计算机科学术语中,将有序字符(例如网页或计算机程序中给出的字符)转换为一系列标记(已分配和识别的含义字符串)的过程称为词法分析、词法分析或标记化。词法分析器是执行词法分析的程序。它也称为扫描器或标记器,尽管词法分析器的第一阶段称为扫描器。词法分析器和解析器通常结合使用,以分析不同编程语言、网页等的语法。

关键词也是指标记:具有已分配和识别含义的字符串,称为词法标记或标记。它将结构化为包含标记名称和标记值(可选)的对。标记名称是词法单元的类别。常见的标记名称有

  • 标识符:程序员选择的名称;
  • 关键词:任何编程语言中已定义的名称;
  • 分隔符(标点符号):成对的分隔符和标点符号;
  • 运算符:对参数进行操作并产生结果的符号;
  • 字面量:文本、数字、逻辑、引用字面量;
  • 注释:块、行(如果编译器将注释作为标记处理,则完全取决于编译器,否则将被删除)。

考虑 C 编程语言中的以下表达式

c = x * y + 3;

上述表达式的词法分析提供了以下形式的标记序列:[(标识符, c), (运算符, =), (标识符, x), (运算符, *), (标识符, y), (运算符, +), (字面量, 3), (分隔符, ;)]

在语言学中,标记名称可以称为词性。


2) 第 4 层防火墙(能够查看传输层以下所有协议头的设备)不能执行以下哪个操作?

  1. 在晚上 9:00 到凌晨 5:00 之间阻止所有 HTTP 流量
  2. 阻止所有 ICMP 流量
  3. 阻止来自特定 IP 地址的入站流量,但允许流向同一 IP 地址的出站流量
  4. 在晚上 9:00 到凌晨 5:00 之间阻止多用户系统上特定用户的 TCP 流量

答案:d

解释: 通过阻止 TCP 端口 80 可以阻止完整的 HTTP 流量,这在 L4 防火墙中是可能的。

D) 由于这是应用层的责任,它不能基于用户身份阻止数据包,它是 L4 防火墙。


3) 如果抛掷两个均匀硬币,并且已知至少有一个结果是正面,那么两个结果都是正面的概率是多少?

  1. 1 / 3
  2. 1 / 4
  3. 1 / 2
  4. 2 / 3

答案:a

解释: 由于我们只知道一个结果是正面,因此有三种可能性:{正面,反面}、{正面,正面}、{反面,正面}

两个都是正面的概率是 = 1 / 3


4) 考虑与电子邮件相关的不同活动

m1: 从邮件客户端发送电子邮件到邮件服务器

m2: 从邮箱服务器下载电子邮件到邮件客户端

m3: 在网络浏览器中检查电子邮件

每项活动中使用的应用层协议是什么?

  1. m1: HTTP m2: SMTP m3: POP
  2. m1: SMTP m2: FTP m3: HTTP
  3. m1: SMTP m2: POP m3: HTTP
  4. m1: POP m2: SMTP m3: IMAP

答案:c

解释: 用户客户端用于发送邮件的协议是简单邮件传输协议(SMTP)。

客户端用于接收邮件的协议是邮局协议(POP)。

在网络浏览器中检查邮件使用简单的 HTTP 过程。

如今在互联网上,电子邮件正成为最有价值的服务之一。SMTP 被用作在大多数互联网系统中将邮件从一个用户传输到另一个用户的方法。一个称为 SMTP 的推送协议用于发送邮件,而用于检索这些电子邮件的协议是接收端的 IMAP(互联网消息访问协议)和 POP(邮局协议)。

SMTP:SMTP 协议是一个应用层协议。想要发送邮件的客户端向 SMTP 服务器打开一个 TCP 连接,然后邮件通过该连接发送。SMTP 服务器始终处于监听模式。一旦 SMTP 监听来自任何客户端的 TCP 连接,其进程就会通过端口 25 启动连接。一旦成功建立 TCP 连接,客户端进程会立即发送邮件。

(C) 是正确选项。


5) 一家公司需要为其最新的发明开发软件产品,它有两种编程语言 L1 和 L2 可供选择。使用 L2 开发的代码行数 (LOC) 估计是使用 L1 开发的代码行数的两倍。该产品将需要维护五年。下表列出了公司的各种参数。

参数语言 L1语言 L2
开发所需工时(人年)LOC/10000LOC/10000
每人年的开发成本10,00,000 卢比7,50,000 卢比
维护时间5 年5 年
每年维护成本1,00,000 卢比50,000 卢比

项目总成本包括开发成本和维护成本。当使用 L1 的项目成本等于使用 L2 的项目成本时,L1 的 LOC 是多少?

  1. 4000
  2. 5000
  3. 4333
  4. 4667

答案:b

解释: 假设 L1 的 LOC = a,那么 L2 的 LOC = 2a

现在,(a / 10000) * 1000000 + 5 * 100000 = (2a / 10000) * 750000 + 5 * 50000

求解 a,我们得到 a 的值为 5000


6) 用户模式和内核模式之间的执行切换时间为 t1,而两个进程之间的切换时间为 t2。

以下哪个是正确的?

  1. t1 > t2
  2. t1 = t2
  3. t1 < t2
  4. 无法判断 t1 和 t2 之间的关系

答案:C

解释: 谈到上下文切换或进程切换,它们只能发生在内核模式。因此,我们首先需要从用户模式切换到内核模式以进行进程切换。然后,我们必须保存当前离开 CPU 的进程的 PCB。然后需要加载所需进程的 PCB。现在我们已经完成了从内核模式到用户模式的切换。但是,如果我们谈论从用户模式切换到内核模式,这是一个非常快速的操作(在硬件级别只需要进行单比特更改)

因此 T1 < T2


7) 一家公司需要为其最新发明之一开发数字信号处理软件。该软件预计有 40000 行代码。该公司需要使用基本的 COCOMO 模型确定开发此软件所需的人月工作量。该模型的乘法因子在嵌入式系统软件开发中给定为 2.8,而指数因子给定为 1.20。估计的人月工作量是多少?

  1. 234.25
  2. 932.50
  3. 287.80
  4. 122.40

答案:a

解释: 建设性成本模型(COCOMO)中应用的公式和工作量如下

Barry W. Boehm 于 20 世纪 70 年代末开发了建设性成本模型,并在 Boehm 1981 年出版的《软件工程经济学》一书中发表,作为一种用于估算软件项目工作量、进度和成本的模型。它基于对 63 个 TRW 航空航天项目的研究,Boehm 曾任软件研究和技术总监。研究期间检查的项目规模不同,从 2,000 到 100,000 行代码不等,使用的编程语言也不同,从汇编语言到 PL/I 不等。检查的项目基于瀑布模型软件开发生命周期,1981 年,这是大多数人采用的软件开发过程。

在引用此模型时,它通常被称为 COCOMO 81。COCOMO II 于 1995 年开发,并于 2000 年最终在《COCOMO II 软件成本估算》一书中出版。它是 COCOMO 81 的替代者,并被认为在估算现代软件开发项目方面更优越和更有效;它支持更现代的软件开发过程,并使用了 161 个项目的更大数据库进行融合。随着软件开发技术从大型机系统和隔夜批处理系统转向桌面开发、现成软件组件的使用和代码重用,对新模型的需求应运而生。

COCOMO 包含三个越来越详细和准确的层次结构形式。

投入工作量 (E) = ab(KLOC)bb [人月]

= 2.8 * (40)1.20

= 2.8 * 83.65

= 234.25


8) 以下哪个选项在良好的软件需求规格说明 (SRS) 文档中不是必需的?

  1. 功能需求
  2. 非功能需求
  3. 实现目标
  4. 软件实现算法

答案:d

解释: 软件系统的需求规格说明在软件需求规格说明文档中定义。它描述了需要为任何客户开发的系统的完整行为,并且可能还包括一组用例来描述用户与软件的交互。除了上述详细信息之外,它还包括非功能需求。非功能需求用于对设计或实现施加约束(例如质量标准、性能工程需求或设计约束)

在 SRS 文档中,应清楚地记录非功能需求、功能需求和系统实现目标。


9) 以下哪对具有不同的表达能力?

  1. 确定性有限自动机(DFA)和非确定性有限自动机(NFA)
  2. 确定性下推自动机(DPDA)和非确定性下推自动机(NPDA)
  3. 确定性单带图灵机和非确定性单带图灵机
  4. 单带图灵机和多带图灵机

答案:b

解释: NDPDA 用于具有歧义的语言/语法。DPDA 版本接受确定性上下文无关语言,可以将其定义为上下文无关语言的真子集。

机器转换中使用当前状态和输入符号,以及当前栈顶的符号。如果我们谈论栈中较低的符号,它们实际上没有直接影响且不可见。如前所述,机器操作包括弹出、压入或替换栈顶元素。对于相同的输入符号组合、栈顶符号和状态,DPDA 最多有一个合法的转换。因此,它与 NPDA(非确定性下推自动机)不同。


10) HTML(超文本标记语言)具有语言元素,允许除了描述网页文档结构之外的某些操作。以下哪个操作是纯 HTML 页面(不包含任何服务器端或客户端脚本)不支持的?

  1. 将来自不同站点的网页对象嵌入到同一页面中
  2. 在指定间隔后自动刷新页面
  3. 下载后自动重定向到另一个页面
  4. 将客户端时间显示为页面的一部分

答案:d

解释: A) 将来自不同站点的网页对象嵌入到同一页面中,我们使用 <object> 元素。

B) 在指定间隔后自动刷新页面,我们使用 <meta http-equiv = "refresh"> 标签。

C) 下载后自动重定向到另一个页面,我们可以使用以下 HTML 标签,例如 0 x 0 - <iframe> 和下载源,我们还可以使用 <meta http - equiv = "refresh" content = "0; url = download.binary" /> 来实现此目的。

D) 不使用 JavaScript 实际上是不可能的——通常对用户的时间,即用户发送回复的时间,没有概念。


11) 一台计算机处理多个中断源,其中以下与此问题相关。

来自 CPU 温度传感器的中断(如果 CPU 温度过高则引发中断)

来自鼠标的中断(如果鼠标移动或按下按钮则引发中断)

来自键盘的中断(如果按下或释放键则引发中断)

来自硬盘的中断(如果磁盘读取完成则引发中断)

以下哪个将以最高优先级处理?

  1. 来自硬盘的中断
  2. 来自鼠标的中断
  3. 来自键盘的中断
  4. 来自 CPU 温度传感器的中断

答案:d

解释: 如果分配给请求的更高优先级中断级别被延迟或中断,可能会导致致命后果。一些通常具有高速传输速率的设备(例如磁性磁盘)总是被分配高优先级,而像鼠标、键盘这样的慢速设备则被分配低优先级。重要的中断,即来自 CPU 温度传感器的中断,如果不给予优先级或被忽略,可能会导致致命后果。


12) 考虑一个关系表,每个注册学生只有一条记录,具有以下属性。

  1. Registration_Num:每个注册学生的唯一注册号
  2. UID:唯一身份号,在国家层面每个公民都是唯一的
  3. BankAccount_Num:银行的唯一账号。学生可以有多个账户或联名账户。此属性存储主账号。
  4. Name:学生姓名
  5. Hostel_Room:宿舍房间号

以下哪个选项是不正确的?

  1. BankAccount_Num 是候选键
  2. Registration_Num 可以是主键
  3. 如果所有学生都来自同一个国家,则 UID 是候选键
  4. 如果 S 是一个超键,并且 S-UID 为 NULL,则 S-UID 也是一个超键

答案:a

解释: 候选键值的作用是唯一标识表中对应的元组。在上述问题中,银行账号不作为候选键。问题中指出,学生可以有多个账户或联名账户。该列存储学生的主账号。现在考虑一个情况,如果多个学生拥有联名账户,并且该联名账户是他们的主账户,在这种情况下,银行账号的值将无法唯一标识表中的元组。


13) 以下哪个电路与 2 输入 XNOR(异或非)门不等价?

GATE 2011

答案:d

解释: 除了选项 D,所有其他选项(即选项 A、B、C)都产生 XOR。


14) 布尔表达式 (P + Q' + R') . (P + Q' + R) . (P + Q + R') 的简化 SOP(乘积之和)形式是

  1. (P'.Q + R')
  2. (P + Q'.R')
  3. (P'.Q + R)
  4. (P.Q + R)

答案:b

解释: 可以通过给定示例看到

(P + Q' + R') . (P + Q' + R) . (P + Q +R') =

GATE 2011

使用卡诺图,和积形式为:P + Q'.R'


15) 设计一个模 258 计数器所需的 D 触发器的最小数量是。

  1. 9
  2. 8
  3. 512
  4. 258

答案:a

解释: 如果我们谈论一个 n 位二进制计数器,它通常由 'n' 个触发器组成,能够以二进制从 0 计数到 2n - 1。2n ≥ 258


16) 线程通常被定义为“轻量级进程”,因为操作系统(OS)为线程维护的数据结构比为进程维护的数据结构更小。与此相关,以下哪项是正确的?

  1. 对于每个线程,操作系统仅维护 CPU 寄存器状态
  2. 操作系统不为每个线程维护独立的堆栈
  3. 对于每个线程,操作系统不维护虚拟内存状态
  4. 对于每个线程,操作系统仅维护调度和记账信息

答案:c

解释: 进程的地址空间由线程共享。如果我们谈论内存,它与进程相关,但与线程不完全相关。

CPU 利用率的基本单位被称为线程,它由一个栈、程序计数器以及一些寄存器(还有线程 ID)组成。从图中可以看出,对于一个控制线程——它有一个 PC 程序计数器,以及一个在任何时间点都可以形成的单一指令序列;如果我们谈论多线程应用程序,我们可以看到在一个选定的进程中有多个线程,每个线程都有自己的栈、程序计数器和一些寄存器,同时共享数据、公共代码和某些特定结构(如打开的文件)。

GATE 2011

选项 (A): 从上图中可以清楚地看出,除了 CPU 寄存器外,数据文件、堆栈和代码文件也得到了维护。因此,选项 (A) 是错误的,因为它声称操作系统只维护 CPU 寄存器的状态。

选项 (B): 根据给定选项 (B),操作系统不为每个线程维护独立的堆栈。从上图可以清楚地看出,为每个线程维护了独立的堆栈。因此选项 (B) 也是错误的。

选项 (C): 根据给定选项 (C),操作系统不形成虚拟内存状态。因此,操作系统不为单个线程维护任何虚拟内存状态是绝对正确的。

选项 (D): 根据给定选项 (D),操作系统仅维护记账和调度信息。但这是不正确的,因为它还包含其他信息,如 CPU 寄存器堆栈、程序计数器、数据文件和代码文件。


17)

GATE 2011

  1. K4 是平面图而 Q3 不是
  2. K4 和 Q3 都是平面图
  3. Q3 是平面图而 K4 不是
  4. K4 和 Q3 都不是平面图

答案:b

解释: 一个图可以在一个平面上以这样一种方式绘制,即没有两条边相互交叉,这被称为平面图。

以下两个图是相关图的平面嵌入。

GATE 2011


18) 如果一个随机变量的平方期望 (E[X²]) 与随机变量期望的平方 (E[X])² 之间的差表示为 R,那么?

  1. R = 0
  2. R < 0
  3. R >= 0
  4. R > 0

答案:c

解释: 随机变量的方差可以定义为 (E[X])² 和 (E[X²]) 之间的差。方差 主要用于衡量一组数字的分布程度。(零方差表示所有值都相同。)而一个非零方差总是用正数表示


19) 像 Java 这样的现代计算机语言的词法分析,在必要且充分的意义上,需要以下哪种机器模型的能力?

  1. 有限状态自动机
  2. 确定性下推自动机
  3. 非确定性下推自动机
  4. 图灵机

答案:a

解释: 如果我们谈论词法分析,在这种情况下,有限自动机用于从输入的程序中生成关键词、标识符形式的标记和常量。它用于在模式识别过程中使用字符串匹配算法搜索关键词,这是编译的第一步是词法分析。程序在词法分析过程中被分成各种标记。如果我们谈论有限状态自动机,词法分析器通常基于它。标记通常可以通过不同的正则表达式表示

标识符由 [a - z, A - Z][a - z, A - Z, 0 - 9]* 表示

关键词 if 由 if 给出。整数由 [- +] ? [0 - 9]+ 给出。


20) 假设一台计算机的页面错误服务时间为 10ms,平均内存访问时间为 20ns。如果每 10^6 次内存访问生成一个页面错误,那么内存的有效访问时间是多少?

  1. 21ns
  2. 30ns
  3. 23ns
  4. 35ns

答案:b

解释: 设页面错误率为 Y

EMAT(有效内存访问时间)= Y x(页面错误服务时间)+ (1 - Y) x(内存访问时间)= (1 / (106)) x 10 x (106) ns + (1 - 1 / (106)) x 20 ns = 30 ns(约)


21) 考虑一个假想的处理器,其指令类型为 LW R1, 20(R2),在执行期间从内存读取一个 32 位字并将其存储到 32 位寄存器 R1 中。内存位置的有效地址是通过将常量 20 与寄存器 R2 的内容相加获得的。以下哪项最能反映此指令用于内存中操作数的寻址模式?

  1. 立即寻址
  2. 寄存器寻址
  3. 寄存器间接变址寻址
  4. 基址变址寻址

答案:d


22) 以下 C 语言程序片段会打印什么?

char c[] = "GATE2011"; char *p = c; printf("%s", p + p[3] - p[1]) ;
  1. GATE2011
  2. E2011
  3. 2011
  4. 011

答案:c

解释: =>通过 *p = c,在给定代码中可以推断出指针 p 代表字符串 c,即 "GATE2021",因此 p[3] 使用给定字符串 c 是 'E',p[1] 使用给定字符串 c 是 'A'。

=>在 printf 语句中:p[3] - p[1] 可以推断为字符 'E' 的 ASCII 码值减去字符 'A' 的 ASCII 码值 = 4

=>因此,表达式 p + p[3] - p[1] 使用上述值变为 p + 4,即字符串 "2011" 的基地址

因此 printf("%s", p + p[3] - p[1]) ; 将最终打印值 2011


23) 最大堆是一种每个父节点的值都大于或等于其子节点的值的堆。以下哪个是最大堆?

GATE 2011

答案:b

解释: 二叉树 BT 被称为最大堆,如果它是一个完全二叉树 CBT(一个 CBT 也称为完全二叉树,其中除最后一层可能外,每一层都被完全覆盖/占用,并且所有节点都尽可能靠左)最终遵循最大堆属性(其中最大堆可以定义为一种二叉树,其中二叉树的每个父节点都大于或等于其对应的左右子节点的值)。

A) 图 A 中表示的二叉树不是最大堆,因为它不遵循完全二叉树的属性

B) 图 B 中表示的二叉树是最大堆,因为它遵循完全二叉树的属性,并且还遵循最大堆的属性。

C) 图 C 中表示的二叉树不是最大堆,因为可以看出 '8' 是节点 '5' 的右子节点,因此违反了最大堆的属性。

D) 图 D 中表示的二叉树不是最大堆,因为可以看出 '8' 是节点 '5' 的右子节点,因此违反了最大堆的属性。除了上述,图 D 的二叉树中还有许多其他节点违反了最大堆属性。


24) 设 P 是正则语言,Q 是上下文无关语言,且 Q ⊆ P。(例如,设 P 是由正则表达式 p*q* 表示的语言,Q 是 {pnqn| n ∊ N})。那么以下哪个选项始终是正则语言?

(A) P ⋂Q
(B) P - Q
(C)∑* - P
(D)∑* - Q

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

答案:c

说明

1. P ∩ Q 表示 P 与 Q 的交集,因为给定 Q ⊆ P,即 Q 是 P 的子集,所以结果为 Q,因此我们可以说它是上下文无关语言,但不是正则语言。

2. P - Q(P 减 Q)= P ∩ Q(P 与 Q 的交集)甚至可能不是上下文无关语言,因为 CFL(上下文无关语言)的闭包属性。

3. Σ∗ - P(Σ∗ 减 P)等价于 P 的补集,因此我们可以说它是正则语言。可以参考正则语言的闭包定律。

4. Σ∗ - Q(Σ∗ 减 Q)等价于 Q 的补集,因此我们可以说它可能不是 CFL(上下文无关语言)。


25) 下面给出了一种算法,用于查找数组 A[0 :n-1] 中最长单调递增数字序列的长度。
设 Li 表示从数组中索引 i 开始的最长单调递增序列的长度

GATE 2011

以下哪个说法是正确的?

  1. 该算法使用动态规划范式
  2. 该算法具有线性复杂度并使用分支定界范式
  3. 该算法具有非线性多项式复杂度并使用分支定界范式
  4. 该算法使用分而治之范式。

答案:a

解释: 使用动态规划概念可以解决 LIS(最长递增子序列)问题。

在 LIS(最长递增子序列)问题中,我们的任务是找出给定序列中最长子序列的长度,使得子序列中的所有值都按非递减顺序排序。举例来说,对于 {11, 23, 10, 34, 22, 51, 42, 61, 81},最长递增子序列的长度是 6,最长递增子序列是 {11, 23, 34, 51, 61, 81}。

示例

输入: arry[] = {4, 11, 3, 2, 21}

输出: LIS 长度 = 3,LIS 为 4, 11, 21

输入: arry[] = {6, 4, 11, 8, 41, 81}

输出: LIS 长度 = 4,LIS 为 {4, 8, 41, 81}

输入: arry[] = {4, 3}

输出: LIS 长度 = 1,LIS 为 {4} 和 {3}

递归技术方法

最优子结构: 设 arry [0 . . . . . . . . . . n - 1] 是输入的数组,设 L(i) 是以索引 i 结束的最长递增子序列的长度,使得 arry[ i ] 代表最长递增子序列的最后一个元素。

那么,L(i) 可以递归地写成

L( i ) = 1 + max( L( j ) ) 我们可以说 j 的值:0 < j < i 且 arry[ j ] < arry[ i ];或者 L( i ) = 1,如果没有这样的 j 存在。

为了计算给定数组的最长递增子序列,需要返回的是 max(L( i )),并且 i 的值在 0 < i < n 之间。

形式上,以索引 i 结束的最长递增子序列的长度将比所有以索引 i 之前的索引结束的 LIS 的最大长度多一,其中 arry[ j ] < arry[ i ] (j < i)。

因此,我们观察到最长递增子序列问题遵循最优子结构性质,因为重要问题可以使用子问题的解决方案来解决。

下面的递归树将有助于更好地理解所使用的方法

输入:arry[] = {3, 10, 2, 11}

F(i):表示以索引 'i' 结束的子数组的最长递增子序列 (最长递增子序列 1)}



26) 考虑下面给出的语言 L1、L2、L3。

L1 = {0p 1q | p, q ε N}

L2 = {0p1q | p, q ε N 且 p = q}

L3 = {0p 1q0r | p, q, r ε N 且 p = q = r}

以下哪个说法是不正确的?

  1. 下推自动机(PDA)可以用来识别 L1 和 L2
  2. L1 是一种正则语言
  3. 所有三种语言都是上下文无关语言
  4. 图灵机可以用来识别所有三种语言

答案:c

解释: L1 是正则语言。其确定性有限自动机 DFA 表示为

GATE 2011

L2 不是正则语言,这可以通过泵引理证明。L2 是上下文无关语言。

S → AB ------------------------ (a)

A → 0A | ε --------------- (b)

B → 1B | ε ---------------- (c)

L3 不是上下文无关语言,这也可以通过泵引理证明。L3 是递归可枚举语言。

GATE 2011

从上图可以看出,每个 RL 也是上下文无关语言。因此,下推自动机用于识别 L1 和 L2。

由于上下文无关语言和正则语言也是递归语言。所以我们可以说图灵机可以用于识别所有给定的 L1、L2 和 L3。

L2 不是 RL,这可以通过泵引理证明。L2 是上下文无关语言。

S → AB

A → 0A | ε

B → 1B | ε

L3 不是上下文无关语言,可以通过泵引理证明(参见 Ullman)。L3 是递归可枚举语言。


27) 考虑两个二元运算符 ' ↑ ' 和 ' ↓ ',其中运算符 ↓ 的优先级低于 ↑ 运算符。运算符 ↑ 是右结合的,而运算符 ↓ 是左结合的。以下哪个表示表达式 (7 ↓ 3 ↑­ 4 ­↑ 3 ↓ 2) 的解析树?

GATE 2011

答案:b

解释: 给定上述问题中的表达式:(7 ↓ 3 ↑ 4 ↑ 3 ↓ 2)。

我们按照优先级进行操作,↑ 具有更高的优先级,因此 ([3 ↑ 4 ↑ 3) 表示的子表达式将首先被评估。由于运算符 ↑ 是右结合的,因此子表达式 4 ↑ 3 将首先被评估。因此表达式的评估模式将是 ((7 ↓ (3 ↑ (4 ↑ 3))) ↓ 2)。这里我们必须注意,在两个 ↓ 运算符中,第二个在第一个之后被评估,因为运算符 ↓ 的结合性是从左到右。


28) 在一个非流水线顺序处理器上,给定一个程序段,它是中断服务例程的一部分,用于将 500 字节从 I/O 设备传输到内存。

初始化地址

寄存器初始化计数为 500

循环:从设备加载一个字节

存储在由地址寄存器给出的内存地址处

递增地址寄存器

递减计数

如果计数 != 0 则转到循环

假设程序中的每个语句都等同于机器指令,如果它不是加载/存储指令,则需要一个时钟周期执行。加载/存储指令需要两个时钟周期执行。

系统设计人员还有另一种方法,即使用 DMA 控制器实现相同的传输。DMA 控制器需要 20 个时钟周期进行初始化和其他开销。每个 DMA 传输周期需要两个时钟周期从设备传输一个字节的数据到内存。

当使用基于 DMA 控制器的设计代替基于中断驱动程序的输入输出时,近似的加速比是多少?

  1. 3.4
  2. 4.4
  3. 5.1
  4. 6.7

答案:a

说明


29) 给定 n 个不同元素的集合和一个带有 n 个节点的未标记二叉树。我们有多少种方法可以用给定集合填充该树,使其成为一个二叉搜索树?

  1. 0
  2. 1
  3. n!
  4. (1 / (n + 1)) . 2nCn

答案:b

说明

计算 'n' 个节点可能形成的不同 BST 的数量,等同于计算 'n' 个节点可能形成的不同 BT 的数量,假设节点未标记。因此,此值也将是

= 2nCn / (n + 1) (第 n 个 Catalan 数)

换句话说,我们可以说,对于每个有效的 BST,我们可以通过置换顶点得到 n! 个 BT,其中只有一个置换是 BST。因此,使用 'n' 个节点可能形成的 BST 总数将是

= 'n' 个不同节点的不同 BT 数量 / n 的阶乘!

= (2n)! / (n + 1) = 2n Cn / (n + 1) (第 n 个 Catalan 数)

(可以记住一个事实:对于给定的树结构,只能有一个 BST。因此,具有 'n' 个节点的不同二叉搜索树的数量将等于 'n' 个节点可能形成的不同 BT 结构的数量)


30) 以下哪个选项是正确的,给定三个正整数 x、y 和 z,以及一个谓词?

P(x) = ¬ (x = 1) ∧∀y (∃z (x = y * z) ⇒ (y = x) ∨ (y = 1))

  1. P(x) 为真意味着 x 是一个质数
  2. P(x) 为真意味着 x 是一个不等于 1 的数
  3. P(x) 总是真,无论 x 的值如何
  4. P(x) 为真意味着 x 除了 1 和 x 之外恰好有两个因子

答案:a

说明

GATE 2011

因此,谓词被评估为 P(x) = (¬ (x = 1)) ∧ (∀y (∃z (x = y * z) ⇒ ((y = x) ∨ (y = 1)))) 如果给定 P(x) 的值为真,则意味着 x ≠ 1 且 ∀y 如果存在 z 的值使得 x = y * z,那么我们可以说 y 必须是 x(即 z = 1)或者 y 必须是 1(即 z = x),这清楚地表明 x 只有两个因子,第一个可以是 1,第二个可以是 x 本身。

用于定义质数的谓词。


31) 给定 i = ? -1,积分的计算结果是多少?

GATE 2011

  1. 0
  2. 2
  3. -i
  4. i

答案:d

说明

GATE 2011


32) 考虑一个数据库表 T,包含两列 X 和 Y,每列都是整数类型。创建表后,插入一条记录 (X = 1, Y = 1)。

设 MX 和 MY 分别表示表中所有记录中 X 和 Y 的最大值。使用 MX 和 MY,插入新记录 128 次,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1。请注意,每次插入后,MX 和 MY 的值都会改变。完成上述步骤后,以下 SQL 查询的输出是什么?

SELECT Y FROM T WHERE X = 7;

  1. 127
  2. 255
  3. 129
  4. 257

答案:a

说明

给定初始值,即表的第一条元组的值为 1 1,此时 MX 的最大值为 1,MY 为 1,现在使用上述给定公式(X 和 Y 的值分别为 MX + 1,2 * MY + 1)

X = MX + 1 = 1 + 1 = 2 ---------------------------- (1)

Y = 2 * MY + 1 = 2 * 1 + 1 = 3 ------------------------- (2)

使用方程 1 和 2,形成了下表的元组 2。

从元组二可以看出,X 和 Y 的最大值分别为 MX = 2 和 MY = 3(使用上述给定公式,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1)

X = MX + 1 = 2 + 1 = 3 ------------------------ (3)

Y = 2 * MY + 1 = 2 * 3 + 1 = 7 ------------------------- (4)

使用方程 3 和 4,形成了下表的元组 3。

从元组三可以看出,X 和 Y 的最大值分别为 MX = 3 和 MY = 7(使用上述给定公式,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1)

X = MX + 1 = 3 + 1 = 4 ---------------------------- (5)

Y = 2 * MY + 1 = 2 * 7 + 1 = 15 ------------------ (6)

使用方程 5 和 6,形成了下表的元组 4。

从元组四可以看出,X 和 Y 的最大值分别为 MX = 4 和 MY = 15(使用上述给定公式,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1)

X = MX + 1 = 4 + 1 = 5 -----------------------------(7)

Y = 2 * MY + 1 = 2 * 15 + 1 = 31 ----------------------------- (8)

使用方程 7 和 8,形成了下表的元组 5。

从元组五可以看出,X 和 Y 的最大值分别为 MX = 5 和 MY = 31(使用上述给定公式,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1)

X = MX + 1 = 5 + 1 = 6 ------------------------ (9)

Y = 2 * MY + 1 = 2 * 31 + 1 = 63 ----------------------------- (10)

使用方程 9 和 10,形成了下表的元组 6。

从元组六可以看出,X 和 Y 的最大值分别为 MX = 6 和 MY = 63(使用上述给定公式,X 和 Y 的值分别为 MX + 1 和 2 * MY + 1)

X = MX + 1 = 6 + 1 = 7 --------------------------------------- (11)

Y = 2 * MY + 1 = 2 * 63 + 1 = 127 --------------------------- (12)

使用方程 11 和 12,形成了下表的元组 7。

因此,使用上述方法形成了一个表格,如问题所述,查询 SELECT Y FROM T WHERE X = 7; 我们需要获取 X = 7 的值,因此无需插入 128 次。

现在从给定的表格中,查询 SELECT Y FROM T WHERE X = 7; 将产生 Y = 127 的值。


33) 考虑一个有限的随机值序列 X = { x1, x2, . . . . . . . . . . . . , xn}。设 μx 是 X 的均值,σx 是 X 的标准差。设另一个等长有限序列 Y 由 yi = a*xi + b 导出,其中 a 和 b 是正常量。设 μy 是该序列的均值,σy 是该序列的标准差。以下哪个说法是不正确的?

  1. X 中众数的索引位置与 Y 中众数的索引位置相同。
  2. X 中中位数的索引位置与 Y 中中位数的索引位置相同。
  3. μy = aμx + b
  4. σy = aσx + b

答案:d

解释: 加上常量 'b' 会移动分布,乘以常量 'a' 会沿中位数拉伸分布

GATE 2011

分布中最常出现的数据是众数,因此众数的索引位置不会改变。使用上图可以清楚地看到中位数的索引位置也不会改变。现在对于均值

GATE 2011

和标准差

GATE 2011


34) 一副 5 张牌(每张牌上都有一个从 1 到 5 的不同数字)被彻底洗牌。然后每次从牌堆中取走两张牌。第一张牌的数字比第二张牌的数字大 1 的概率是多少?

  1. 1 / 5
  2. 4 / 25
  3. 1 / 4
  4. 2 / 5

答案:a

解释: 任务是从 5 张牌中选择 2 张牌。现在取出的顺序更重要,有 5P2 = 5! / 3! = 20 个基本事件,其中有 4 个有利事件

牌 4 在牌 3 之前,牌 5 在牌 4 之前,牌 3 在牌 2 之前,最后牌 2 在牌 1 之前。

因此,概率 = 4 / 20 = 1 / 5


35) 考虑以下三个进程 P0、P1 和 P2 的到达时间和突发时间表。

使用抢占式最短作业优先调度算法。调度仅在进程到达或完成时进行。这三个进程的平均等待时间是多少?

  1. 5.0 毫秒
  2. 4.33 毫秒
  3. 6.33 毫秒
  4. 7.33 毫秒

答案:a

说明

GATE 2011

从上面的甘特图可以看出,进程 P0 在 0 毫秒时被分配给 CPU,并且从表中可以看出,就绪队列中没有其他进程,因为下一个进程在 1 毫秒时到达。

进程 P1 在 1 毫秒时到达,然后进程 P0 在 P1 到达 1 毫秒后被抢占。我们可以从表中看到 P1 的执行时间是 4 毫秒,小于 P0 的剩余时间(现在是 8 毫秒)。我们可以从甘特图看到进程 P1 完全运行了 4 毫秒。进程 P2 在 2 毫秒时到达,由于 P1 的剩余时间小于 P2 的执行时间,因此 P1 继续运行,因为 P2 的突发时间比 P1 长。

进程 P1 完成其全部执行,现在进程 P0 再次调度,剩余时间为 8 毫秒,因为 P0 的剩余时间小于 P2 的突发时间。

从甘特图可以看出,P0 等待了 5 - 1 - 0 = 4 毫秒,P1 等待了 1 - 1 = 0 毫秒,P2 等待了 13 - 2 = 11 毫秒。所以平均等待时间是 (0 + 4 + 11) / 3 = 5。


36) 考虑在具有加载-存储架构的机器上评估以下表达式树,其中内存只能通过加载和存储指令访问。变量 a、b、c、d 和 e 最初存储在内存中。机器只能在操作数位于寄存器中时评估此表达式树中使用的二元运算符。指令只在寄存器中产生结果。如果中间结果不能存储在内存中,评估此表达式所需的最小寄存器数量是多少?

GATE 2011

  1. 2
  2. 9
  3. 5
  4. 3

答案:d

解释: 将 c 插入 R1:R1 ← c,

将 d 插入 R2:R2 ← d,

将 R1 和 R2 的和插入 R2:R2 ← R1 + R2,

将 e 插入 R1:R1 ← e,

将 R1 和 R2 的差插入 R2:R2 ← R1 - R2

我们现在可以计算剩余的表达式,即我们应该首先将值 a 和值 b 加载到 CPU 寄存器中,但我们稍后需要寄存器 R2 中的值。

因此我们必须使用另一个寄存器。

将 a 插入 R1:R1 ← a,

将 b 插入 R3:R3 ← b,

将 R1 和 R3 的差插入 R1:R1 ← R1 - R3

将 R1 和 R2 的和插入 R1:R1 ← R1 + R2,


37) 以下哪个选项提供了函数 f1、f2、f3 和 f4 的渐近复杂度的递增顺序?

f1(n) = 2^n
f2(n) = n^(3 / 2)
f3(n) = nLogn
f4(n) = n^(Logn)

  1. f3, f2, f4, f1
  2. f3, f2, f1, f4
  3. f2, f3, f1, f4
  4. f2, f3, f4, f1

答案:a

解释: n*logn 是所有函数中增长最慢的,其次是 n(3 / 2),然后是 n(logn)。最后,2n 是所有函数中增长最快的。


38) 维度分别为 p x q、q x r、r x s 和 s x t 的四个矩阵 M1、M2、M3 和 M4 可以通过多种方式相乘,且标量乘法的总数不同。例如,当按 ((M1 X M2) X (M3 X M4)) 相乘时,乘法总数为 pqr + rst + prt。当按 (((M1 X M2) X M3) X M4) 相乘时,标量乘法总数为 pqr + prs + pst。

如果 p = 10,q = 100,r = 20,s = 5,t = 80,那么所需的标量乘法次数是

  1. 248000
  2. 44000
  3. 19000
  4. 25000

答案:c

解释: 使用 ((M1 X (M2 X M3)) X M4) 是乘法次数最少的情况。

乘法总数 = 5 * 20 * 100 + 100 * 10 * 5 + 80 * 5 * 10 = 19000。


39) 考虑一个关系表 r,其中包含足够数量的记录,具有属性 A1, A2,..., An,并且 1 <= p <= n。下面给出两个查询 Q1 和 Q2。

GATE 2011

数据库可以配置为对 Ap 进行有序索引或对 Ap 进行哈希。以下哪个语句是正确的?

  1. 有序索引对于两个查询都将始终优于哈希
  2. 哈希对于两个查询都将始终优于有序索引
  3. 哈希对于 Q1 将优于有序索引,但对于 Q2 则不然
  4. 哈希对于 Q2 将优于有序索引,但对于 Q1 则不然。

答案:c

解释: 在从哈希表中访问记录的值时,哈希可以被证明更好。如果记录在值范围内搜索,那么有序索引将是一个更好的选择。

我们可以说,通过使用索引,我们可以通过实际减少查询处理所需的磁盘访问次数来优化数据库的效率。哈希是一种数据结构方法,主要用于从数据库中快速定位和访问数据。

为了创建索引,会使用一些数据库列。

从图中可以清楚地看到,第 1 列是搜索键,它包含关系模式的候选键或主键的副本。

关系模式索引中的值是按排序顺序排列的,因为可以快速访问相应的值。

注意:需要注意的是,数据可能不按排序顺序排列。

从图中可以看出,第二列表示为数据引用指针,它包含一组指针,用于保存各种磁盘块的地址,磁盘块是特定键值可以定位的块。

GATE 2011

  • 索引的各种属性
  • 插入时间:插入时间是定位适当的存储空间,然后在该空间中插入新数据所需的时间。
  • 访问时间:访问时间是定位特定数据值或一组数据值所需的时间。
  • 删除时间:删除时间是定位特定项目并删除该项目以及更新索引结构所需的时间。
  • 访问类型:访问类型可以定义为访问的类型,例如范围访问、基于值的搜索等。
  • 空间开销:空间开销可以定义为索引所需的额外空间。

40) 考虑下面给出的矩阵。

GATE 2011

以下哪个选项提供了矩阵特征值的正确值?

  1. 1, 4, 3
  2. 3, 7, 3
  3. 7, 3, 2
  4. 1, 2, 3

答案:a

解释: 对角线元素是三角矩阵的特征值。可以计算或验证给定答案,使用特征方程 |M - λI| = 0。

1 - λ 2 3

0 4 - λ 7 = 0

0 0 3 - λ

这意味着

(4 - λ) * (1 - λ) * (3 - λ) = 0


41) 考虑一个具有四个阶段(S1、S2、S3 和 S4)的指令流水线,每个阶段仅包含组合电路。在每个阶段之间以及最后一个阶段的末尾都需要流水线寄存器。阶段和流水线寄存器的延迟如图所示。

GATE 2011

在理想条件下,与相应的非流水线实现相比,流水线在稳态下的近似加速比是多少?

  1. 4.0
  2. 2.5
  3. 1.1
  4. 3.0

答案:b

解释: 流水线寄存器引起的开销实际上不计入正常执行时间,因此在这种情况下

总计数将计算为

11 + 6 + 8 + 5 = 30 [不使用流水线寄存器]

考虑到流水线的情况,每个阶段包含 11 纳秒(a;以及 1 纳秒的额外开销,这是由于流水线寄存器引起的)。

并且,在稳定状态下,每个流水线周期之后都会生成输出。因此,在这种情况下,它被给定为 11 纳秒。考虑到 1 纳秒,即添加了 1 纳秒的额外开销,最终将得到 12 纳秒的恒定输出生成周期。

因此,将 30 除以 12,我们得到结果为 2.5,即选项 B 最终是正确答案。


42) 语言 L 的定义,字母表为 {a},如下所示:L= { ank | k > 0,且 n 是一个正整数常量}。识别 L 所需的 DFA 的最小状态数是多少?

  1. k + 1
  2. n + 1
  3. 2 ^ (n + 1)
  4. 2 ^ (k + 1)

答案:b

解释: 从问题中可知,值 'n' 是一个常数,而 k 的值是任何正整数。我们举个例子,假设 n 给定为 3,那么在这种情况下,DFA - 确定性有限自动机必须能够接受以下值:3a, 6a, 9a, 12a, . . . . . . . . . . . . . . . . 。为了构建这样的 DFA - 确定性有限自动机,我们需要 4 个状态。

GATE 2011

上述 DFA 清楚地表明它接受诸如 3a, 6a, 9a, 12a 等值。


43) 一个 8KB 直接映射写回缓存被组织成多个块,每个块大小为 32 字节。处理器生成 32 位地址。缓存控制器为每个缓存块维护标签信息,其中包括以下内容。

1 个有效位

1 个修改位

以及识别缓存中映射的内存块所需的最小位数。缓存控制器存储元数据(标签)所需的总内存大小是多少?

  1. 4864 位
  2. 6144 位
  3. 6656 位
  4. 5376 位

答案:d

解释: 根据问题,缓存大小 = 8 KB

根据问题,块大小 = 32 字节

所以计算缓存行数的公式 = 缓存大小 / 块大小

= (8 * 1024 字节) / 32 字节 = 256 字节 _________________ (a)

GATE 2011

为了存储 1 行的元数据所需的总位数 =

19 + 1 + 1 = 21 位____________________ (b)

使用方程 a 和 b,代入以下公式

所需总内存 = 存储 1 行元数据所需的总位数 * 缓存行数 256 * 21 = 5376 位


44) 一个应用程序在启动时加载 100 个库。加载每个库都需要一次磁盘访问。磁盘到随机位置的寻道时间为 10 毫秒。磁盘的转速为 6000 rpm。如果所有 100 个库都从磁盘上的随机位置加载,加载所有库需要多长时间?(一旦磁头定位到块的开头,从磁盘块传输数据的时间可以忽略不计)

  1. 0.50 秒
  2. 1.50 秒
  3. 1.25 秒
  4. 1.00 秒

答案:b

解释: 由于传输所需的时间,即传输时间可以忽略不计,因此平均访问时间是平均旋转延迟和平均寻道时间之和。

现在,到随机位置的平均寻道时间在问题中给出为 10 毫秒。另一方面,平均旋转延迟是完成一次旋转所需时间的一半。问题中明确指出 6000 转需要 1 分钟。因此,1 次旋转大约需要 = 60 / 6000 秒,即 10 毫秒。因此,平均旋转延迟是 10 毫秒的一半,即 5 毫秒。

平均磁盘访问时间 = 旋转延迟 + 寻道时间

= 5 毫秒 + 10 毫秒 = 15 毫秒 _________________ (a)

对于一百 (100) 个库,平均磁盘访问时间将等于 15 * 100 = 1500 毫秒


45) 下面给出了一个带有字母表 {a, b} 的确定性有限自动机 (DFA) D。

GATE 2011

以下哪个有限状态机是有效的最小 DFA,它接受与 D 相同的语言?

GATE 2011

答案:a

解释: 问题中给出的详细 DFA 清楚地表明它不接受字符串 'b',因此选项 (B) 和选项 (C) 是无效的,因为这两个选项都接受字符串 'b',而给定的 DFA - 确定性有限自动机实际上不接受它。即使选项 (D) 也是一个无效选项,因为它接受字符串 "bba",而问题中给定的 DFA 实际上不接受它,因此选项 (A) 是正确选项。


46) 数据库表 Loan_Records 如下所示。

以下 SQL 查询的输出是什么?

  1. 3
  2. 9
  3. 5
  4. 6

答案:c

解释: 虚拟表的内容将是

以下将是虚拟表 T 的内容

在上述两个表上应用自然连接后,我们将得到下表作为结果。在自然连接中,表必须有共同的列,这里在上述表中 Bank_Manager 列是共同的列。"Sunderajan" 在 Bank_Manager 列中有两条条目,因此 Bank_Manager 为 "Sunderajan" 的条目将有 4 条。


47) 以下是对 C 函数的注释。

/* 此函数计算二次方程 x^2 + b.x + c = 的根。该函数将两个实根存储在 *root1 和 *root2 中,并返回根的有效性状态。它处理四种不同类型的情况。

(i) 当系数 a 为零,无论判别式如何

(ii) 当判别式为正

(iii) 当判别式为零

(iv) 当判别式为负。

只有在情况 (ii) 和 (iii) 中存储的根才有效。

否则,根中存储 0。当根有效时,函数返回 0,否则返回 -1。

该函数还确保 root1 >= root2

int get_QuadRoots( float a, float b, float c, float *root1, float *root2); */

一名软件测试工程师被分配进行黑盒测试。他提出了以下测试用例,其中许多是冗余的。

测试用例输入集预期输出集判别式等价类
AbCRoot1Root2返回值
T100700-1N / A(i)
T201300-1N / A(ii)
T3121-1-100(iii)
T44-1291.51.500(iii)
T51-2-33-1016(ii)
T611400-1-15(iv)

以下哪个选项从黑盒测试的输入角度,提供了使用等价类划分方法的非冗余测试集?

  1. T1, T2, T3, T6
  2. T1, T3, T4, T5
  3. T2, T4, T5, T6
  4. T2, T3, T4, T5

答案:c

解释: T2、T4、T5 和 T6 属于不同的类别。因此,它提供了一个最佳测试套件。


48) 考虑以下接受两个参数的 C 递归函数。

当函数 foo 被调用为 foo(345, 10) 时,返回值是多少?

  1. 345
  2. 12
  3. 5
  4. 3

答案:b

解释: 调用 foo(345, 10) 返回数字 n 中十进制数字(因为 r 是 10)的和。345 的数字之和是 3 + 4 + 5 = 12。

调用 foo(345, 10) 将按以下顺序执行。

foo(34, 10),函数 foo 再次被调用,参数 n = 34,r = 10

foo(3, 10),函数 foo 再次被调用,参数 n = 3,r = 10

foo(0, 10),函数 foo 再次被调用,参数 n = 0,r = 10


49) 考虑接受两个参数的相同 C 递归函数。

当函数 foo 被调用为 foo(513, 2) 时,返回值是多少?

  1. 9
  2. 8
  3. 5
  4. 2

答案:d

解释: foo(513, 2) 将返回 1 + foo(256, 2)。所有后续递归调用(包括 foo(256, 2))都将返回 0 + foo(n / 2 , 2),除了最后一次调用 foo(1, 2)。最后一次调用 foo(1, 2) 返回 1。

因此,foo(513, 2) 返回的值是 1 + 0 + 0 . . . . . . . . . . + 0 + 1。

函数 foo(n, 2) 基本返回数字 n 中位的和(或置位位的计数)。

调用 foo(513, 2) 将按以下顺序执行。

foo(256, 2),函数 foo 再次被调用,参数 n = 256,r = 2

foo(128, 2),函数 foo 再次被调用,参数 n = 128,r = 2

foo(64, 2),函数 foo 再次被调用,参数 n = 64,r = 2

foo(32, 2),函数 foo 再次被调用,参数 n = 32,r = 2

foo(16, 2),函数 foo 再次被调用,参数 n = 16,r = 2

foo(8, 2),函数 foo 再次被调用,参数 n = 8,r = 2

foo(4, 2),函数 foo 再次被调用,参数 n = 4,r = 2

foo(2, 2),函数 foo 再次被调用,参数 n = 2,r = 2

foo(1, 2),函数 foo 再次被调用,参数 n = 1,r = 2

foo(0, 2),函数 foo 再次被调用,参数 n = 0,r = 2


50) 考虑以下电路,涉及在某种计数器配置中使用的三个 D 型触发器。

GATE 2011

如果在时钟边沿出现之前的某个时刻,P、Q 和 R 的值分别为 0、1 和 0,那么在时钟边沿之后 PQR 的值将是多少?

  1. 0 0 0
  2. 0 0 1
  3. 0 1 0
  4. 0 1 1

答案:d

解释: P' = R, Q' = (P + R)', R' = QR'

根据问题,已知 (P = 0, Q = 1, R = 0),下一状态 P' = 0, Q' = 1, R' = 1

D 触发器真值表

GATE 2011

最初 (p = 0, q = 1, r = 0)

D 触发器 p = R
D 触发器 q = NOT(p XOR r)
D 触发器 r = (NOT)r.q
因此,(p, q, r) 值的 Q(t + 1)
p => r = 0 所以 p = 0
q => NOT(p XOR r) => 1 所以 q = 1
r => (NOT)r.q => 1 所以 r = 1
(p, q, r) = (0, 1, 1)

替代方法 -

D 触发器的真值表 -

GATE 2011

根据给定的电路图,P、Q 和 R 的布尔表达式非常清楚:

这里的下标 t 指当前时钟周期,下标 (t + 1) 指下一个时钟周期。

QP(t + 1) = P(t + 1) = Rt

QQ(t + 1) = Q(t + 1) = Rt' Pt'

QQ(t + 1) = Q(t + 1) = QtRt'

GATE 2011


51) 考虑上一问中给出的数据。如果所有触发器在通电时都复位为 0,那么计数器生成的 PQR 所表示的不同输出(状态)的总数是多少?

  1. 3
  2. 4
  3. 5
  4. 6

答案:b

解释: 将有 4 种不同的状态,可以表示为 0 0 0 → 0 1 0 → 0 1 1 → 1 0 0 (→ 0 0 0) 因此,正确选项是选项 B


52) 考虑一个包含五个节点 N1 到 N5 的网络,如下图所示。

GATE 2011

该网络使用距离向量路由协议。当路由稳定后,不同节点的距离向量如下。

N1: (0, 1, 7, 8, 4)
N2: (1, 0, 6, 7, 3)
N3: (7, 6, 0, 2, 6)
N4: (8, 7, 2, 0, 4)
N5: (4, 3, 6, 4, 0)

每个距离向量是当前实例到节点 N1 到 N5 的最佳已知路径的距离,其中到自身的距离为 0。此外,所有链接都是对称的,并且双向成本相同。在每一轮中,所有节点都与各自的邻居交换其距离向量。然后所有节点更新其距离向量。在两轮之间,链接成本的任何变化都将导致两个相邻节点仅更改其距离向量中的该条目。52. 链接 N2-N3 的成本降低到 2(双向)。在下一轮更新后,节点 N3 的新距离向量将是什么。

  1. (3, 2, 0, 2, 5)
  2. (3, 2, 0, 2, 6)
  3. (7, 2, 0, 2, 5)
  4. (7, 2, 0, 2, 6)

答案:a

解释:如果我们将下一轮,每个节点将接收和发送距离向量到邻居,然后更新其距离向量。

节点N3将从节点N2接收到(1, 0, 2, 7, 3),并最终将到N1和N5的距离分别更新为'3'和'5'。


53) 考虑与上一问题相同的数据。

在上一问题中的更新之后,N1-N2链路断开。N2将立即在其距离向量中以成本“无穷大”反映这一变化。在下一次更新之后,N3的距离向量中到N1的成本是多少?

  1. 3
  2. 9
  3. 10
  4. 无限

答案:c

解释:根据以上问题,我们可以说在下一轮中,节点N3将从节点N2接收到节点N1的距离为无穷大。最后,它将从节点N4接收到节点N1的距离为8。因此,它将到N1的距离更新为2 + 8。


54) 一个无向图G(V, E)包含n (n > 2)个节点,命名为v1, v2, ... vn。当且仅当0 < |i - j| <= 2时,两个节点vi, vj连接。每条边(vi, vj)的权重为i + j。下面展示了一个n = 4的示例图。

GATE 2011

具有n个节点的此类图的最小生成树(MST)的成本是多少?

  1. 1 / 12(11n^2 - 5n)
  2. n^2 - n + 1
  3. 6n - 11
  4. 2n + 1

答案:b

解释:两个节点的MST可以表示为如下

(V1) _ (V2)

总权重将等于3

三个节点的MST可以表示为如下

(V1) _ (V2)

|

(V3)

总权重将等于4 + 3 = 7

四个节点的MST可以表示为如下

(V1) _ (V2) _ (V4)

|

(V3)

总权重将等于4 + 3 + 6 = 13

四个节点的MST可以表示为如下

V1) _ (V2) _ (V4)

|

(V3)

|

(V5)

总权重将等于4 + 3 + 8 + 6 = 21

四个节点的MST可以表示为如下

(V1) _ (V2) _ (V4) _ (V6)

|

(V3)

|

(V5)

总权重将等于4 + 3 + 8 + 10 + 6 = 31

通过以上例子观察,当我们添加第k个节点时,MST的权重以2k - 2的因子增加。设T(n)为MST的权重。因此,T(n)可以写成

T(n) = T(n - 1) + (2n - 2) 对于 n > 2

T(n)的不同值如下:T(1) = 0, T(2) = 0 和 T(2) = 3

递推关系可以表示为级数 (2n - 2) + (2n - 4) + (2n - 6) + (2n - 8) + …… + 3 的和,其解为 n^2 - n + 1。

因此,选项B是正确选项。


55) 在上一个问题中,n = 10 的 MST 中,从 v5 到 v6 的路径长度是多少?

  1. 11
  2. 25
  3. 31
  4. 41

答案:c

解释:任何节点数大于5的最小生成树实际上v6和v5之间的距离都是相等的,因为所有节点数大于5的最小生成树的基本结构都遵循以下模式。

(V1) _ (V2) _ (V4) _ (V6) _ . . . . . . . (更多偶数编号节点)
|
(V3)
|
(V5)
|
.
.

(更多奇数编号节点)

因此,V6和V5之间的距离可以计算为 = 6 + 4 + 3 + 10 + 8 = 31


56) 以下哪个选项与下面的词语意思最接近:Inexplicable(不可解释的)

  1. incomprehensible(难以理解的)
  2. indelible(不可磨灭的)
  3. inextricable(无法摆脱的)
  4. infallible(绝无错误的)

答案:a

解释:根据问题,我们的任务是从给定的四个选项中找出与“Inexplicable”意思最接近的词。“Inexplicable”的意思是无法解释的事物。因此,在给定的选项中,“Incomprehensible”是所有四个选项中最佳的选项。


57) 如果 Log(P) = (1 / 2)Log(Q) = (1 / 3)Log(R),那么以下哪个选项是正确的?

  1. P2 = Q3R2
  2. Q2 = PR
  3. Q2 = R3P2
  4. R = P2Q2

答案:b

说明

已知 Log(P) = (1 / 2)Log(Q) = (1 / 3)Log(R)

设 X = Log(P) = (1 / 2)Log(Q) = (1 / 3)Log(R)

设给定对数的底数为 Y

P = Yx - - - - - - - - 1
Q = Y2x - - - - - - - - 2
R = Y3x - - - - - - - - - -3

使用上述1、2和3,我们可以说Q2 = PR


58) 从以下选项中选择最合适的词语填空,完成以下句子。

我曾考虑……去新加坡度假,但最终放弃了。

  1. to visit
  2. having to visit
  3. visiting
  4. for a visit

答案:c

说明

根据问题,我们的任务是从四个选项中找到最合适的词。“Contemplate”是一个及物动词。因此,它后面必须跟着一个动名词。因此,适当的用法是“动词”加上“-ing”形式。

让我们讨论一下及物动词:它可以定义为接受一个或多个宾语的动词。因此,它与不及物动词相反,不及物动词实际上没有宾语。及物性可以被认为是子句的一个重要属性,通过它,活动通过一个施动者传递给一个受动者。

因此,在给定的四个选项中,正确选项是“visiting”。


59) 从以下选项中选择最合适的词语填空,完成以下句子。

如果你想给听众留下深刻印象,就不能低调、犹豫或……

  1. Hyperbolic(夸张的)
  2. Restrained(克制的)
  3. Argumentative(好辩的)
  4. Indifferent(漠不关心的)

答案:b

解释:“Restrained”看起来是填入上述句子中最好的选项,除此之外,所有其他选项都不太适合填入上述空格。


60) 从以下选项中选择与给定单词意思最接近的反义词:Amalgamate(合并)

  1. merge
  2. split(分裂)
  3. collect(收集)
  4. separate(分离)

答案:b

解释:我们的任务是选择“Amalgamate”的反义词。根据字典定义,“Amalgamate”的意思是联合或结合以创建一个结构或组织。因此,在给定的选项中,“Separate”意为分开,即联合的反义词,是“Amalgamate”的近义反义词。


61) 很少有学校课程包括关于如何处理丧亲和悲伤的单元,然而所有学生在人生的某个时刻都会经历死亡和离别带来的失落。

根据上述段落,关于丧亲的单元中不会包含哪个主题?

  1. 如何写慰问信
  2. 治愈过程中会经历哪些情绪阶段
  3. 主要的死因是什么
  4. 如何向悲伤的朋友提供支持

答案:c

解释:根据以上给出的段落,关于丧亲的单元讨论的是如何处理悲伤和丧亲,而不是关于死亡原因的。除了这个,所有其他给定的选项都是有道理的。


62) P、Q、R和S是最近在人类栖息地发现的四种危险微生物。每个圆的面积(括号内印有直径)代表单个微生物进入人体24小时内,在人类免疫系统作用下存活的生长情况。对人类的危险程度与微生物的毒性、效力和生长成正比,如下图所示。

GATE 2011

一家制药公司正在考虑开发针对最危险微生物的疫苗。该公司首次尝试应该针对哪种微生物?

  1. P
  2. Q
  3. R
  4. S

答案:a

解释:答案应该是A

人类面临的风险与微生物的效力、生长和毒性成正比。

R = 30 x 300 x 0.4 = 3600

Q = 40 x 600 x 0.5 = 12000

P = 50 x 800 x 0.4 = 16000

S = 20 x 200 x 0.8 = 3200

根据GATE 2011发布的官方答案,正确选项是d。上图中表示的毒性可以定义为使人体受损所需的细菌毫克数。S的毒性值最大,因为少量危险等级 (D) ∝ 生长 (G)

危险等级 - D ∝ 1 / 毒性 (T)

危险等级 - D ∝ 效力 (P)

危险等级 - D = GP / T

因此,S的风险等级将是最大的。

由下式给出:

S的危险性 = ( 0.8 × π(10)2 ) / 200

= 1.256 以类似方式可以计算其他值。


63) 生产一种产品的可变成本(V)根据V = 4q的方程变化,其中q是产量。同一产品的生产固定成本(F)根据F = 100 / q的方程随q减少。应该生产多少单位才能使总成本(V + F)最小化?

  1. 5
  2. 4
  3. 7
  4. 6

答案:a

解释:根据问题,问要生产多少单位才能使总成本(V + F)最小化。

成本(V + F)的值可以写成 4q + 100 / q = (4q2 + 100) / q

对于所得方程,一阶导数为 (8q2 - 100 - 4q2 ) / q2

为了使 (V + F) 的值最小,需要其一阶导数等于0。

即,我们可以写出上述方程 [(8q2 - 100 - 4q2 ) / q2] = 0

=> 4q2 - 100 = 0

4q2 = 100 => q = 5。

因此,当 q = 5 时,上述方程将产生最小值。


64) 一名运输商每天收到相同数量的订单。目前,他有一些待发货的积压订单。如果他使用7辆卡车,那么在第4天结束时他可以清空所有订单。或者,如果他只使用3辆卡车,那么在第10天结束时所有订单都会被清空。那么,在第5天结束时没有积压订单所需的最小卡车数量是多少?

  1. 4
  2. 5
  3. 6
  4. 7

答案:c

解释:如问题所问,在第5天结束时没有待处理订单所需的最小卡车数量是多少?

假设每辆卡车最多花费“y”个单位时间。

再次假设每日订单量为“x”,积压订单量为“z”。

因此我们可以写出 7 * 4 * y = 4x + z __________________ (1)

我们也可以写出 3 * 10 * y = 10x + z __________________ (2)

我们需要 (5x + z) / 5 的值,用 y 表示。

我们可以通过从第二个方程中减去第一个方程来得到 x 的值:6x = 2y => x = y / 3

最后,通过将 x 的值代入方程 (1) 来计算 z 的值

4x + z = 28y4(y / 3) + z = 28yz = (80 / 3)y ___________________ (3)

因此 (5x + z) / 5 的值为 5 * (y / 3) + (80 / 3)y,即 17 / 3。因此我们可以说,大约需要6辆卡车,才能在第5天结束时没有积压订单。


65) 一个容器最初装有10升纯酒精。从该容器中取出1升酒精,换入1升水。随后,再次取出1升混合物,换入1升水,此过程再重复一次。现在容器中还剩下多少酒精?

  1. 7.58升
  2. 7.84升
  3. 7升
  4. 7.29升

答案:d

解释:问题中给出,容器最初装有10升纯酒精,从中取出1升酒精,换入1升水,这个过程接下来的两次也重复进行。

因此,根据上述概念,第一次用水替换后剩余的酒精量 = 9升

同理,第二次用水替换后剩余的酒精量 = 9 x (9 / 10)

最后,第三次用水替换后剩余的酒精量 = 9 x (9 / 10) x (9 / 10) = 7.29


下一主题#