"二级公共基础120题详解版.doc"
文档内容主要涵盖了计算机二级考试中的公共基础知识,涉及程序设计基础、数据结构与算法、软件工程基础等多个方面。以下是相关知识点的详细说明:
1. **算法的基本特性**:
- **有穷性**:算法必须在有限步骤内终止,这是保证算法能够执行完毕的重要性质。
- **确定性**:算法的每一步骤都有确切的定义,不会出现歧义。
- **可行性**:算法的每一步都能够被执行,且结果是可计算的。
- **输入**:算法可以有零个或多个输入,这些输入在算法执行之前给定。
- **输出**:算法至少有一个或多个输出,它们是算法处理输入的结果。
2. **算法的时间复杂度和空间复杂度**:
- **时间复杂度**:衡量算法运行速度的指标,通常用大O记法表示,表示随着问题规模n的增长,算法执行所需基本操作的数量的增长速率。
- **空间复杂度**:表示算法在执行过程中临时占用存储空间大小的量度,也是n的函数。
3. **数据结构**:
- **线性数据结构**:数据元素之间存在一对一的关系,如数组、链表、栈和队列等。
- **非线性数据结构**:数据元素之间存在一对多或多对一的关系,例如树(包括二叉树)、图等。题目中指出二叉树不属于线性数据结构。
4. **二叉树的性质**:
- **二叉树的结点数**:在完全二叉树中,第n层的最大结点数为2^(n-1),因此第5层最多有2^(5-1)=16个结点。
5. **结构化程序设计**:
- **基本控制结构**:包括顺序、选择(条件分支)和重复(循环)结构,是结构化编程的基础。
- **模块化**:模块应有单一入口和单一出口,以提高程序的可读性和可维护性。
- **避免或限制goto语句**:结构化编程鼓励使用顺序、选择和循环来控制流程,而不是使用goto语句,以减少程序的复杂性和提高可读性。
6. **面向对象编程**:
- **对象**:包含属性(数据)和方法(操作)的实体。
- **类**:对象的模板或蓝图,定义了一组具有相同属性和行为的对象。
- **继承**:子类继承父类的属性和方法,实现代码复用。
- **消息传递**:对象间的通信方式,一个对象调用另一个对象的方法即发送消息。
以上知识点是计算机二级考试公共基础部分常见的考点,考生需要理解和掌握这些基本概念和原理,以便在实际考试中能准确答题。