赞
踩
在分配空间上: 数组分配在一块连续的数据空间上,因此在分配空间时必须确定大小;链表是一块不连续的动态空间,通过指针来连接,因此长度可变。
数组优点: 1)可以利用偏移地址来访问元素,效率高,为O(1) 2)可以使用折半方法查找元素,效率较高 数组缺点: 1)空间连续,存储效率低; 2)插入和删除元素效率比较低,且比较麻烦
链表优点: 1)插入和删除元素不需要移动其余元素,效率高,为O(1); 2)不要求连续空间,空间利用效率高 链表缺点: 1)不提高随机访问元素的机制 2)查找元素和搜索元素的效率低,最快情况为O(1),平均情况为O(N)