数据结构
1、线性存储结构 2、非线性存储结构
1、线性结构:
1
2
3
4
2和3前面都有数,比如2,2前面叫前驱,2后面叫后继
3同理,2是3的前驱,4是3的后继
可以想象一下,用一条直线把他串起来
简称线性表,只能是整形、字符串啥的,不能一半整形一半字符串
这种就是顺序存储结构,存储空间是连续的。
还有一种
1
2
3
4
这种也叫线性结构,他中间空了一个位出来
他也可以用一条弯曲的线连起来,这种就是链式存储结构,被称为链表,存储是分散的,没有像顺序存储那些连着
常见的线性结构:数组、队列、链表、栈
2、非线性结构:树、二维数组、多维数组等
栈
栈顶(top):可以进行插入和删除操作
栈底(bottom):把栈顶放下来的东西装住
栈顶跟栈底可以理解为一个杯子,栈顶就是杯口,栈底就是杯底,倒水只能从杯口进,杯底不能漏水
比如现在往杯子里面放球,先放进去的球,只能最后拿出来,最后放进去的球是第一个拿出来的,栈也是这样
往栈里面放数据的时候叫入栈(push)
取出数据的时候叫出栈(pop)