数据的逻辑结构对应的线性结构和非线性结构
线性结构应当是前后互相专一对应的,
一般线性表:,栈和队列,串,数组,都是线性结构
广义表是线性的推广,但他的本质是非线性结构,这个很重要。
非线性结构:
集合,树状图,一般树,二叉树,有向图和无向图。
我们一般将数据类型分为三种:
对应:
原子类型:不能再分解
结构类型:其值可以再分解
抽象数据类型:抽象数据和与之相关的操作
数据结构分三大要素,缺一不可
逻辑结构
存储结构
数据运算
问题:
对于两种不同的数据结构,逻辑结构或者物理结构一定不同吗?
答:数据的运算也很重要的,二叉树和二叉排序树,逻辑结构就相同,但运算方式不同,查找时间也不同。
试举一例,说明相同的逻辑结构,同种运算在不同的存储方式下实现,其运算效率也不同。
答:线性表的顺序存储和链式存储,顺序存储中,查找修改值十分困难,算法时间久,链式存储方便修改。