赞
踩
数组是连续存储,数组在创建时需要一个整块的空间。
链表是链式存储,链表在内存空间中不一定是连续的。
数组一般创建在栈区,链表一般创建在堆区,在增加节点时需要new或malloc新节点,相较于数组长度不固定,自由度高。
数组可以通过下标随机访问,单向链表只能通过头结点从前向后访问链表中的元素。
数组在插入或删除的时候需要移动链表中的其他元素,时间复杂的为O(n)。
链表在进行插入删除时,找到要插入或删除的位置后,增删时间复杂度为O(1)。
所以当线性表进行大量的插入和删除操作时建议使用链表,若主要对线性表进行查找操作,较少进行插入操作是建议使用数组。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。