1. 内存:数组在内存中是一块连续的区域。而链表可以存在任何地方,不要求连续。
2. 空间:数组需要预留空间,不方便拓展,链表不需要,只需给指针分配空间,大小不用自己定义,数据随意增删。
3. 插入和删除效率:数组插入(删除),此位置后面的数据必须全部后移(前移),效率低。链表插入删除都比较方便,插入时,只需告诉前一值自己的地址,和后一值的地址。
4. 优缺点:数组:随机访问性强,查找速度快,插入和删除效率低,可能浪费内存,且无法拓展,必须要有足够的内存空间。
链表:插入删除快,内存利用高,没有固定大小,拓展灵活。但是不能随机查找,必须遍历。