数据结构

1,数据结构是数据存储和组织的方式。是包含多个数据元素的集合,这些数据元素彼此之间有很有多关系。
存储是物理存储,组织是数据元素的关系。
2,当物理存储是顺序的,也就是说数据元素是顺序排放的,那么组织就是由物理存储来维护的,关系也是物理存储维护。
貌似这种情况只有数组
3,当物理存储不是顺序的,肯定不能用物理存储来组织这些数据元素,需要数据元素本身来维护数据元素彼此之间的关系。
如果数据元素之间是一对一的关系,就是线性结构,意思是通过这一对一的关系我可以遍历所有的元素,而且每次遍历的
顺序都是相同的,就像一条绳子一样,绳子上栓的东西就是数据元素,无论从前往后遍历,还是从后往前遍历。注意
这里数据的物理存储不是顺序的。
这就是线性链表,如果只能从前往后或者从后往前就是单链表,如果两者都可以就是双链表,
如果可以循环,意思是最前面的数据元素和最后面的也有链接,就是循环链表了,很显然,单链表和双链表都可以是
循环链表。
如果数据元素之间是一对多的关系,就是树形结构,意思是通过一对多的关系我也可以遍历所有元素,但是会出现好几种结果,
每个结果的遍历顺序不一样,就像数一样,树干、树枝、树叶。
这就是树,如果这个数最多只有两个树枝或叶子,就是二叉树。注意数只有一个树干。
如果数据元素之间是多对多的关系,就是图形结构,意思是元素之间的关系是任意的。
3,线性链表的增删改查:
如果只能在某一端增删的话,就是栈,增为压栈,删为出栈
如果只能在一端进行增,另一端进行删,就是队列,增的一端是队尾,删的一端为对头。
如果链表的遍历是通过散列函数来维持的,就为散列表
4,数的增删改查:
如果数的树枝永远大于或小于树叶,就是堆。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值