简单理解链表和数组

链表是一种非连续存储结构,通过指针链接数据元素,提供灵活的插入和删除操作。相比数组,链表在需要动态扩展时更节省内存。链表类型包括单链表、双链表等,适用于各种数据操作需求。数组则使用连续内存空间,当需要扩展时需重新分配,操作不便。链表弥补了数组在动态数据管理上的不足。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 一:链表是什么
  • 1、链表是物理存储单元上非连续的、非顺序的存储结构,数据元素的逻辑顺序是通过链表的指针地址实现,有一系列结点(地址)组成,结点可动态的生成。
  • 2、结点包括两个部分:
  • (1)存储数据元素的数据域(内存空间),(2)存储指向下一个结点地址的指针域。
  • 3、相对于线性表顺序结构,操作复杂。
  • 4.链表分为 (1)单链表 (2)双链表 (3)单向循环链表 (4)双向循环链表
  • 二:链表的作用
  • 1、实现数据元素的存储按一定顺序储存,允许在任意位置插入和删除结点。
  • 2、包括单向结点,双向结点,循环接点
  • 三:链表与数组的区别
  • 说到链表那肯定要聊一下数组,为什么会出现链表呢?
  • (1)数组:使用一块连续的内存空间地址去存放数据,但
  • 例如:
  • int a[5]={1,2,3,4,5}。突然我想继续加两个数据进去,但是已经定义好的数组不能往后加,只能通过定义新的数组
  • int b[7]={1,2,3,4,5,6,7}; ***********这样就相当不方便比较浪费内存资源,对数据的增删不好操作。i
  • (2)链表:使用多个不连续的内存空间去存储数据, 可以 节省内存资源(只有需要存储数据时,才去划分新的空间),对数据的增删比较方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小铭小铭c

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值