首页 > 编程知识 正文

数据结构的具体应用,链表具体运用

时间:2023-05-05 05:56:15 阅读:31835 作者:3995

与数组链表的区别及应用场景首先我们要先理解什么是数组和链表

要对计算机上给定的数据集执行某些操作,请将数据集的一部分(如果数据量非常大,则可能只将部分数据读取到内存中进行处理)或全部存储在内存中,然后再对内存中的数据进行处理

例如,对于数据集s{1、2、3、4、5和6},s的元素之和要求首先将数据存储在内存中,然后将内存中的数据相加。

内存空间有足够的连续空间时,可以将数据连续存储在内存中。 各种编程语言的数组一般是这样存储的(可能也有例外)。

存储器内的存储形式可以分为连续存储和离散存储两种。 因此,数据的物理存储结构有连续存储和离散存储两种,它们对应于我们通常所说的数组和链表。

数组和链表的区别

数组:数组将元素连续存储在内存中; 优点:数据是连续存储的,内存地址是连续的,因此在检索数据时效率很高。缺点:在保存存储之前,必须请求连续的内存空间,并且在编译时必须确定空间大小。 运行时的空间大小不能根据需要增减。 如果数据都很大,则可能会越界;如果数据很小,则可能会浪费内存空间。 在改变数据个数的情况下,增加、插入、删除数据的效率很低。

链表:链表是动态申请内存空间,不需要像数组那样提前申请内存大小。 链表在使用时申请即可,根据需要动态申请或删除内存空间。 添加、删除和插入数据比数组更灵活。 此外,链表的数据可以在内存中任意使用

链表和数组使用场景

数组应用场景:数据少、频繁的运算是通过序列号访问数据元素,数组实现方便,任何高级语言都支持; 构建的线性表比较稳定。

链表应用场景:很难估计链表的长度或规模;构建频繁执行插入删除操作的动态线性表。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。