单链表结构表现出和数组不同的时间和空间权衡。

下表为单链表结构的运行时间:

操作 运行时间
在第i个位置访问 O(n),平均情况
在第i个位置替换 O(n),平均情况
在开始处插入 O(1),最好情况和最差情况
在开始处删除 O(1),最好情况和最差情况
在第i个位置插入 O(n),平均情况
在第i个位置删除 O(n),平均情况

单链表结构相对于数组的主要优点并不是时间性能,而是内存性能。当必须调整数组的大小的时候,其时间和内存都是线性的。当调整链表结构的大小的时候(这在每次插入或删除的时候都会发生),其时间和内存都是常数的。此外,在链表结构中没有浪费内存的问题。链表结构的物理大小不会超过其逻辑大小。链表结构确实有一个额外的内存代价,因为单链表结构必须要为指针使用m个内存单元格。这个代价在双链表中更是变本加厉,因为双链表的节点有两个链接。

结束!

 

相关文章:

  • 2021-12-03
  • 2021-11-29
  • 2021-12-12
  • 2021-06-10
  • 2021-10-28
  • 2021-10-03
  • 2021-11-28
猜你喜欢
  • 2021-10-02
  • 2022-02-01
  • 2021-11-29
  • 2021-11-29
  • 2021-08-25
  • 2021-11-29
相关资源
相似解决方案