数据构造知识点概括第一章 概 论数据就是指可以被计算机识别、存储和加工处理的信息的载体
数据元素是数据的基本单位,可以由若干个数据项构成
数据项是具有独立含义的最小标识单位
数据构造的定义:·逻辑构造:从逻辑构造上描述数据,独立于计算机
·线性构造:一对一关系
·线性构造:多对多关系
·存储构造:是逻辑构造用计算机语言的实现
·次序存储构造:如数组
·链式存储构造:如链表
·索引存储构造:·稠密索引:每个结点均有索引项
·稀疏索引:每组结点均有索引项
·散列存储构造:如散列表
·对数据的操作
定义在逻辑构造上,每种逻辑构造均有一种运算集合
·常用的有:检索、插入、删除、更新、排序
数据类型:是一种值的集合以及在这些值上定义的一组操作的总称
·构造类型:由顾客借助于描述机制定义,是导出类型
抽象数据类型 ADT:·是抽象数据的组织和与之的操作
相称于在概念层上描述问题
·长处是将数据和操作封装在一起实现了信息隐藏
程序设计的实质是对实际问题选择一种好的数据构造,设计一种好的算法
算法取决于数据构造
算法是一种良定义的计算过程,以一种或多种值输入,并以一种或多种值输出
评价算法的好坏的原因:·算法是对的的;·执行算法的时间;·执行算法的存储空间(重要是辅助存储空间);·算法易于理解、编码、调试
时间复杂度:是某个算法的时间花费,它是该算法所求解问题规模 n 的函数
渐近时间复杂度:是指当问题规模趋向无穷大时,该算法时间复杂度的数量级
评价一种算法的时间性能时,重要原则就是算法的渐近时间复杂度
算法中语句的频度不仅与问题规模有关,还与输入实例中各元素的取值有关
时间复杂度按数量级递增排列依次为:常数阶 O(1)、对数阶 O(log2n)、线性阶 O(n)、线性对数阶O(nlog2n)、平方阶 O(n^2)、立方阶 O(n^3)、……k 次方阶 O(n^k)、