全国计算机二级考试公共基础复习知识涵盖了软件开发的基础概念和关键点,以下是这些题目涉及的知识点详解:
1. 算法的执行效率与数据的存储结构有关:算法的性能受到数据如何组织和存储的影响,不同的数据结构会影响算法的时间复杂度和空间复杂度。
2. 线性数据结构:线性数据结构如队列、线性表和栈,它们的数据元素之间存在一对一的关系;二叉树是非线性数据结构,因为它的节点可以有零个、一个或两个子节点。
3. 二叉树的结点数:在满二叉树中,第n层的最大结点数是2^(n-1),所以第5层最多有2^(5-1)=16个结点。
4. 结构化程序设计:强调使用顺序、选择和重复(循环)三种基本控制结构,以及模块化设计,模块应有且仅有一个入口,避免使用 goto 语句以增强代码的可读性和可维护性。
5. 面向对象方法:包括对象、类、继承等概念,过程调用是传统过程式编程的概念,不属于面向对象编程。
6. 软件开发阶段:数据流程图(DFD)通常在需求分析阶段使用,用来描述数据在系统中的流动和处理过程。
7. 设计阶段的任务:不包括定义需求和建立系统模型,这是需求分析阶段的任务;数据结构设计、模块结构定义和算法定义属于设计阶段。
8. 数据库系统的核心:数据库管理系统(DBMS)负责管理数据库的创建、查询、更新和删除等操作。
9. 数据库技术的目标:解决数据共享和一致性问题,数据库系统需要在不同用户间提供数据的共享访问。
10. 内模式:描述数据库的物理存储结构和存取方法,是数据库的内部表示。
11. 算法的时间复杂度:衡量算法运行时间随输入数据规模的增长趋势,通常用大O符号表示,表示算法执行过程中所需要的基本运算次数。
12. 线性结构:线性链表、线性表是线性结构,栈和队列也是线性结构,而二叉树是非线性结构。
13. 完全二叉树的叶子结点数:对于含有n个结点的完全二叉树,若n是奇数,叶子结点数为(n+1)/2;若n是偶数,叶子结点数为n/2,所以699个结点的完全二叉树有350个叶子结点。
14. 结构化程序设计强调:程序的易读性,以提高代码的可读性和可维护性。
15. 需求分析阶段:确定软件的功能和性能需求,是软件生命周期中非常关键的一步。
16. 数据流图的合法图符:控制流不是数据流图的合法图符,加工、数据存储和源/潭是数据流图的基本组成部分。
17. 软件需求分析阶段:包括需求获取、需求分析、编写需求规格说明书和需求验证四个主要步骤。
以上知识点详细解释了计算机二级考试中涉及的软件开发基础,包括算法、数据结构、数据库、软件工程等方面的内容。这些知识对于理解和设计高效的计算机程序至关重要。