链表和数组都属于线性表,都是顺序表。区别在于,链表是逻辑连续,数组是物理连续。
链表不要求每个节点占用的内存连续,靠节点中的next指针将每个节点连接起来。因此存储相同的数据,需要的内存空间更大。查询速度比相同数据的数组慢,但具有可快速插入节点和删除节点的优点。
数组则要求有一整块连续的内存空间,节点顺序存储。可以直接通过首节点地址和下标快速计算得到某个节点的地址,快速查询到值。但进行插入操作和删除操作时,比链表慢。需要移动其余的数据。
链表和数组都属于线性表,都是顺序表。区别在于,链表是逻辑连续,数组是物理连续。
链表不要求每个节点占用的内存连续,靠节点中的next指针将每个节点连接起来。因此存储相同的数据,需要的内存空间更大。查询速度比相同数据的数组慢,但具有可快速插入节点和删除节点的优点。
数组则要求有一整块连续的内存空间,节点顺序存储。可以直接通过首节点地址和下标快速计算得到某个节点的地址,快速查询到值。但进行插入操作和删除操作时,比链表慢。需要移动其余的数据。
本文标题:链表和数组的区别在哪里
本文链接:https://www.haomeiwen.com/subject/degrgctx.html
网友评论