一、数据结构的 基本概念
数据元素是数据的基本单位。
数据项是构成数据元素的不可分割的最小单位。
按照逻辑上的大小 数据>数据元素>数据项
数据结构是相互之间存在一种或者多种特定关系的数据元素的集合。
数据结构:数据的逻辑结构、数据的存储结构、数据的元算。
数据的逻辑结构分为:线性结构和非线性结构。
集合、线性结构、树形结构、图状结构。
存储结构主要有:顺序存储、链式存储、索引存储和散列存储。
顺序存储:物理相邻。优点,单个元素占用空间小,随机存储。缺点,容易产生磁盘碎片。
链式存储:优点,不会出现碎片。缺点,单个元素占用空间大,只能顺序存储。
索引存储“:优点,检索速度快。缺点,索引表会占用存储空间,增加和删除时会花费较多时间。
散列存储:优点,检索、增加和删除操作快。缺点,会出现结点存储单元的冲突。
二、算法和算法评价
算法是对特定问题求解步骤的一种描述。
算法效率的度量是通过时间复杂度和空间复杂度来描述的。
时间复杂度取决于问题的规模和待处理数据的状态。
同一个算法,实现语言的级别越高,执行效率就越低。
算法中所有语句的频度之和记作 T(n)。
时间复杂度就是T(n)的数量级。
基本算法(最深处循环内的语句)的频度与T(n)同数量级。
”O“的含义是T(n)的数量级。
算法原地工作是指算法所需辅助空间是常量,而不是没有。