二叉树之下数据结构和算法

数组和链表

2018-10-10  本文已影响20人  seniusen

1. 数组

1.1 数组为什么从零编号?

数组名代表数组的首地址,数组的下标其实代表数组中某个元素相对首地址的偏移量,数组的第一个元素是零偏移,因此从 0 开始。

上面其实也只是一个解释, C 语言设计者用零开始编号,后来的各种语言也便纷纷效仿,因此就形成了这个习惯。

1.2 数组的特点?


2. 链表

2.1 链表的特点?

2.2 常见链表分类?

单链表只支持一个方向的访问,第一个节点称为头结点,最后一个节点称为尾结点。

循环链表是一种特殊的单向链表,其尾结点指向头结点,从链尾访问链头比较方便。

双向链表的每一个结点同时指向其前面的结点和其后面的结点,因此可以双向访问,但两个指针要占用更多的内存空间。

在向链表中插入或者删除某个结点时,我们需要知道该结点的前向结点,这时候,双向链表就显示出其优势来了。


3. 数组 VS 链表


4. 链表的一些注意事项

参考资料-极客时间专栏《数据结构与算法之美》

获取更多精彩,请关注「seniusen」!


seniusen
上一篇下一篇

猜你喜欢

热点阅读