目录
一、数据结构分类
数据结构在逻辑上可分为线性结构和非线性结构
线性结构
【特征】
a、数据元素(结点)之间存在着一对一的关系
b、结构中仅有一个开始结点和终端结点
c、其余结点都是仅有一个直接前趋和一个直接后继
链表、栈、队列、多维数组、广义表等都属于线性数据结构
非线性结构
【特征】
a、数据元素(结点)之间存在着一对多或多对多的关系
b、一个结点可能有多个直接前趋和直接后继
树形结构、图形结构等属于非线性数据结构
存储方式
数据结构的存储方式有顺序存储、链式存储、索引存储和散列存储
二、算法分析
算法首先要考虑的是其“正确性”,此外我们还要从以下几方面来评估算法的优劣
a、时间复杂度
b、空间复杂度
c、易于理解、易于编程、易于调试等
算法的时间复杂度通常有O(1)、O(㏒n)、O(n)、O(n*㏒n)、O(n²)等级