二级C
循环队列是队列的顺式存储结构
双向链表是链表的顺式存储结构
普通链表是链式存储结构
非线性结构可采用顺式也可采用链式
线性结构是只有一个根结点 每个节点最多有一个
带链队列可以不连续 且队头指针可大于也可小于队尾指针
在链表中 双向链表和循环链表都有两个指针域
带链队列中 队头队尾指针都在动态变化
带链栈中 栈底指针不变 栈顶指针一直在变化
节点中具有多个指针域的链表称之为多重链表
算法的时间复杂度空间复杂度和存储结构有着直接的关系
但 时间复杂度和空间复杂度没有直接的关系
在最坏情况下 直接插入 快速排序和冒泡排序的时间复杂度都是n^2 哈希是 n^1.5 堆排序是nlog2n(时间复杂度最小) 查找最大项的时间复杂度是n-1
算法空间复杂度取决于 执行算法所需要的存储空间
确定软件系统的功能 是在 需求分析阶段
软件模块划分应遵循 低耦合高内聚
软件工程三要素 方法 工具 过程
软件测试的基本步骤 单元测试 集成测试 确认测试 系统测试
软件设计工具依赖于 系统结构图
E-R图属于概念设计阶段
E-R图中的E,R都可表示为关系
E-R图中 实体用矩阵 属性用椭圆 联系用菱形
数据库实现的数据模型 是逻辑数据模型
数据库管理系统的功能是数据模式定义 数据存取的物理构建 数据操作 数据的完整性安全性的定义与检查 数据库的并发控制与故障恢复 数据的服务
对客观世界的复杂事务的结构及他们之间的联系进行描述的是概念数据模型
数据管理技术的发展经历了三个阶段 人工管理阶段 文件系统阶段· 数据库系统阶段(共享性最好)
软件需求分析工具 有数据流图 数据字典 结构化英语 判定表 判定树
对象的基本特点 唯一性 多态性 封装性
面向对象的特点 抽象 继承 封装 多态
关系数据模型 可一对一 一对多 多对一 多对多
关系数据模型就是二维表
数据和操作的结合是封装
使用白盒测试的方法: 逻辑覆盖 基本路径测试
黑盒测试方法是边界值分析法 等价类划分法 错误推测法 因果法
软件定义期 问题定义 可行性研究 需求分析
软件开发期 概要设计 详细设计· 实现 测试
运行维护期 运行维护阶段
计算机软件分两部分 一是机器可执行的程序和数据 二是机器不可执行的 与软件开发 维护等相关的文档
数据定义语言负责数据模式的定义与数据的物理存取构建
数据操作语言 负责数据的操作 包括查询 增删 改 等操作
数据控制语言 负责数据的完整性 安全性的定义与检查 以及并发控制 故障恢复
结构化程序强调了程序的易读性
结构化程序的三种基本控制结构 顺序 选择 循环(重复)
简单程序设计步骤 确定数据结构 确定算法 编码 调试 整理文档
文件指针是指针变量 存储文件缓冲区的首地址 不是文件的路径
fopen() 函数 找到一个文件 并对他进行一些操作 如果找不到 就新建一个同名文件