2021程序员考试重点:对象通信、DLL特性与数据结构

版权申诉
0 下载量 73 浏览量 更新于2024-07-16 收藏 108KB DOC 举报
"2021年程序员考试上午试题的相关知识点" 这部分内容主要涵盖了程序员考试中的一些基础概念和技术,包括对象间的通信、面向对象系统的特点、动态链接库(DLL)、矩阵存储、线性表操作以及数据结构和算法等相关知识。 1. **消息传递**:对象间的通信是通过消息传递实现的,一个消息通常包含接收消息的对象的标识、调用的接收方的操作名以及必要的参数。选项C正确解释了这一点。 2. **面向对象技术**:面向对象系统的一个显著特点是提高了代码的重用性,使得系统更加模块化,易于维护。选项A正确表达了这一特点。 3. **DLL动态链接库**:DLL文件是一种动态链接库,它本身不能独立运行,但可以在运行时被其他程序调用。选项D准确描述了DLL的特点。 4. **三对角矩阵存储**:对于一个三对角矩阵A,其元素按行存储在一维数组B中,矩阵A中的元素A[66,65]在数组B中的下标可以通过公式计算得出,通常是行号乘以列数再加上传统位置减1。由于题目没有给出具体的列数,我们无法直接得出答案,但可以推断出这是一个关于矩阵存储的问题。 5. **线性表插入操作**:在一个有n个元素的等概率插入线性表中,平均需要移动的元素个数是(n+1)/2。因此,选项C是正确的。 6. **线性结构**:列表是线性结构的一种,因为它按照线性的顺序组织数据。选项A正确。 7. **二叉树特性**:二叉树的度指的是树中节点的最大孩子数,可以小于2。选项B正确指出树中节点的度可以小于2,而二叉树的定义是每个节点最多有两个子节点,但不一定所有节点都有两个子节点。 8. **线性表操作效率**:最常进行插入和删除操作的线性表,如果插入是在表尾,删除是在表头,那么采用仅有尾指针的单向循环链表最节省时间,因为这样的结构可以快速访问表头和表尾。 9. **逆波兰式和中缀表达式**:逆波兰式是一种不需要括号的表达式表示方法,可以通过栈来计算表达式的值。选项A正确。 10. **中缀表达式转换**:与逆波兰式"ab+cd+*"对应的中缀表达式是"(a+b)*(c+d)",因为逆波兰式是从左到右扫描,遇到运算符就与前两个元素进行操作。选项C正确表示了这个对应关系。 11. **数组存储**:数组a[3..16,5..20]的元素以列为主序存放,意味着按列优先存储,若每个元素占用2个存储单元,那么a[i,j]的地址计算需要了解具体的存储规则,通常涉及到行偏移和列偏移的计算。 以上就是从给定的程序员考试试题中提取出的关键知识点。这些知识点涵盖编程基础、数据结构、算法和操作系统等方面,都是程序员应当掌握的基本技能。