双向链表的优势:
1.(已知位置)任意位置插入删除都是O(1)
2.按需申请释放,合理利用空间 不存在浪费
缺点:
1.下标随机访问不方便,O(N)
顺序表问题:
1.头部或者中间的插入删除效率低,要挪动数据,保证物理空间连续O(N)
2.空间不够 需要扩容 扩容时有一定的消耗且可能存在一定的空间浪费
3.只适合尾插尾删
顺序表优势:
1.支持下标的随机访问O(1)
2.cpu高速缓存 命中率高
双向链表的优势:
1.(已知位置)任意位置插入删除都是O(1)
2.按需申请释放,合理利用空间 不存在浪费
缺点:
1.下标随机访问不方便,O(N)
顺序表问题:
1.头部或者中间的插入删除效率低,要挪动数据,保证物理空间连续O(N)
2.空间不够 需要扩容 扩容时有一定的消耗且可能存在一定的空间浪费
3.只适合尾插尾删
顺序表优势:
1.支持下标的随机访问O(1)
2.cpu高速缓存 命中率高