链表:任意添加或移除项,它会按需进行扩容。
要存储多个元素,数组(或列表)可能是最常用的数据结构。
这种数据结构非常方便,提供了一个便利的[]语法来访问它的元素。
然而,这种数据结构有一个缺点:数组的大小是固定的,从数组的起点或中间插入 或移除项的成本很高,因为需要移动元素。
链表存储有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的。
每个元素由一个存储元素本身的节点和一个指向下一个元素的引用组成。
| 方法 | 描述 |
|---|---|
| append(element) | 向列表尾部添加一个新项。 |
| insert(position, element) | 向列表的特定位置插入一个新项。 |
| remove(element) | 从列表中移除一项。 |
| removeAt(position) | 从列表的特定位置移除一项。 |
| indexOf(element) | 返回元素在列表中的索引。如果列表中没有该元素则返回-1。 |
| isEmpty() | 如果链表中不包含任何元素,返回true,否则返回false。 |
| size() | 返回链表包含的元素个数。 |
| toString() | 由于列表项使用了Node类,就需要重写继承自JavaScript对象默认的toString方法,让其只输出元素的值。 |
|
|