2012年考研计算机专业基础综合试卷涵盖了多种IT基础知识,以下是其中部分题目及其知识点详解:
1. **递归算法与时间复杂度**:
题目展示了计算阶乘的递归算法。递归函数`fact(n)`的时间复杂度是**O(n)**,因为每次调用自身都会使n减1,直到n=1时结束,总共需要执行n次乘法操作。所以正确答案是B。
2. **中缀表达式到后缀表达式的转换**:
这道题目涉及中缀表达式到后缀表达式的转化,通过栈来存储操作符。在转化过程中,遇到左括号'('就入栈,遇到运算符或右括号时,会先将栈顶的运算符弹出。对于给定的操作符集,最深的嵌套需要7个操作符(包括一个左括号和六个可能的乘除加减),因此同时在栈中的操作符最大个数是7,选B。
3. **二叉树遍历**:
根据题目描述,前序遍历和后序遍历给出了二叉树的节点顺序。前序遍历(根-左-右)是a-e-b-d-c,后序遍历(左-右-根)是b-c-d-e-a。根结点的子节点可以通过后序遍历的顺序确定,因为后序遍历最后一个访问的节点是根节点的右子节点,接着是左子节点。所以根结点的孩子结点有e和c,选C。
4. **平衡二叉树的性质**:
平衡二叉树高度为6,且所有非叶结点平衡因子为1,这意味着树高度与结点数量的关系遵循公式2^(h-1) <= n <= 2^h - 1。当h=6时,代入公式得到32 <= n <= 62。结合选项,结点总数为32或33,具体取决于树的构建方式,但题目没有明确说明,只能选择C,表示可能是32个。
5. **图的广度优先遍历时间复杂度**:
对于有向图的邻接表存储,广度优先遍历(BFS)的时间复杂度是**O(n+e)**,其中n是顶点数,e是边数。这是因为BFS需要遍历每个顶点一次(n),以及每条边可能需要添加到队列并访问相邻节点(e)。
6. **邻接矩阵与拓扑序列**:
邻接矩阵中主对角线以下全为0意味着没有自环,但无法直接判断是否存在拓扑序列,因为这取决于矩阵中是否有源点。所以答案是D,无法确定是否存在拓扑序列。
7. **进程和线程**:
A选项正确,无论系统是否支持线程,进程都是资源分配的基本单位。线程是进程中的执行单元,调度基本单位是线程,同一进程中线程共享地址空间。
8. **磁盘I/O性能优化**:
B选项错误,设置多个分区可以提高磁盘利用率,但不能直接改善I/O性能。其他选项都可以提高性能,例如重排I/O请求次序减少等待时间,预读和滞后写可以减少寻道次数,优化文件物理分布能减少数据访问距离。
9. **TCP/IP体系结构**:
ICMP是Internet Control Message Protocol(互联网控制报文协议)的缩写,它在TCP/IP体系结构中运行于IP协议之上,提供错误检测和报告服务,因此直接为其服务的协议是IP,选B。
10. **物理层接口特性**:
C选项过程特性描述了完成某种功能的事件顺序,如数据的传输流程。
11. **ARP协议**:
ARP协议的功能是根据IP地址查找对应的MAC地址,实现网络设备之间的数据包转发。
以上是部分题目及其知识点,完整的试卷涵盖更多计算机科学的基础概念,包括数据结构、算法、操作系统、网络、计算机组成原理等方面的内容。对于准备考研的学生来说,这些题目考察了扎实的基础理论和实际应用能力。