数据结构与算法(3)链表

空间换时间&时间换空间

对于执行较慢的程序,可以通过消耗更多的内存(空间换时间)来进行优化;

对于内存消耗过多的程序,可以通过消耗更多的时间(时间换空间)来降低内存的消耗。

链表的存储结构

数据结构与算法(3)链表数组需要一块连续的内存空间来存储,需要事先申请需要申请内存空间;而链表通过“指针”将一组零散的内存块串联起来使用,不会占用还未使用的内存空间。

三种最常见的链表结构

单链表

数据结构与算法(3)链表

循环链表

数据结构与算法(3)链表

双向链表

数据结构与算法(3)链表

双向循环链表

数据结构与算法(3)链表

三种基本操作