动态内存分配
创建和维护动态数据结构要求进行动态内存分配,即程序能够在执行时获得更多的内存空间来放新结点,并在不需要这些内存时释放他们。
数据列表可以用数据进行存储,但是用链表存储有几个好处。在数据结构要表示的数据元素的数目无法预先确定的情况下,链表能够提供更合理的空间分配。链表是动态的,所以其长度可以根据需要而增加或减小。链表结点在内存中一般不是连续存放的。通常数组元素在内存中是连续存放的。这样就允许直接存取任何一个数组元素,因为任何数组元素的地址都可以直接根据它与数组的第一个元素的相对位置而计算出来。链表不能直接存取其元素,只有通过正向遍历才能访问一个元素。