Array&List,数组和链表的区别
解答 Array&List,数组和链表的区别
链接解答:
数组的特点:
数组在内存中连续存储元素。由于每个元素占用的内存是相同的,数组中的任何元素都可以通过索引快速访问。数组中插入和删除数据的效率较低。插入数据时,该位置之后的数据必须在内存中向后移动。删除数据时,该数据后面的数据将向前移动。但随机读取数组是非常高效的。因为数组是连续的,并且知道每个数据的内存地址,所以可以直接在地址处找到数据。如果您的应用程序需要快速访问数据而很少或不需要插入和删除元素,则应使用数组。字段需要专用空间,在使用字段之前必须先请求内存大小,这会浪费内存空间。并且领域不会导致扩张。如果字段中定义的空间不够,则必须重新定义字段。
链表的特点:
链表中的元素不是按顺序存储在内存中的,而是通过元素中存在的指针链接在一起。例如:前一个元素有一个指向下一个元素的指针,依此类推,直到最后一个元素。要访问链表中的元素,必须从第一个元素开始,找到所需的元素位置。但对于链表数据结构来说,添加和删除元素非常简单。只需编辑元素中的指针即可。如果您的应用程序需要频繁插入和删除元素,则需要使用链表数据结构。未列出尺寸,可轻松扩展。链表的大小不需要定义,可以随意添加或删除数据。
相关优缺点
领域优势:
1.强随机访问
2。搜索速度快
字段的缺点:
1。插入和润滑效率低
2。会浪费内存
3。内存空间要求较高,必须有足够的内存空间。
4。数组的大小是固定的,不能动态扩展
链表的优点:
1。快速插入和删除
2.内存占用高,不丢失内存
3.大小不固定,扩展非常灵活。
链表的缺点:
不能随机查找,必须从头开始浏览,查找效率低。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网