单链表的头增头删尾增尾删

一、单链表的基本介绍

链表是一种数据结构,和数组同级,链表在进行循环遍历时效率不高,但是在插入和删除时优势明显。

单向链表是一种线性表,是有有结点(Node)组成的,逻辑上是线性的,物理存储上不一定,每个结点只能也只有知道下一个结点的存储位置,向外暴露的只有一个头结点(head),对链表的所有操作都是直接或者间接地通过头结点来实现的。

结点有两部分组成:value,next

单链表分为两种:
(1)不带头节点的链表:此种链表的head即保存第一个数据,访问时从head开始。不利于删除或者添加指定位置数据的操作。
(2)带头节点的链表:此种链表保存数据是从head->next开始的,head中并未保存有数据,访问时自然head->next开始,优点就是方便操作。
 

二、单链表的头增、尾增、头删、尾删

2.1头增

思路:

1、申请新结点

2、新结点.next=head

3、更新第一个结点为新结点:head= 新结点

2.2尾增

1、单链表为空时:即可视为头插,head=node;

2、链表不为空时:

  • 申请新结点,并且让next=null;
  • 找到最后一个结点,
  • 更新最后一个结点的next为新结点,返回头结点。

2.3头删

1、将链表的第一个头结点删除,使头结点的下一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值