单链表各个节点的关系,单链表的中间节点

首页 > 经验 > 作者:YD1662022-11-04 00:27:00


(这里,终于成功了!)

②:尾插代码第二种

上述代码实现了尾插。但是有什么缺陷呢?观察尾插函数可以知道,其中有一个关键步骤,就是寻找尾节点,虽然计算机对于比较这样的一个操作执行起了不会费太大力气,但是这种写法总让我们感觉有点“傻”,总感觉是在做无用功一样。我们能不能想一种方法,定位它的尾节点,使其在进入尾插函数后,不用比较,直接根据记录进行插入。

单链表各个节点的关系,单链表的中间节点(13)

D:单链表尾删

对于单链表来说,初学者最容易犯错的就是尾插处的二级指针问题,只要把尾插明白了,尾删还是很容易的。
在尾删时要考虑三种情况,分别是单链表尾空,单链表内只有一个元素和正常情况

  1. 如果单链表是空的,那么删除时就要报错
  2. 如果单链表只有一个元素,那么删除完一个后,头指针就要置空
  3. 在正常情况下删除,最后一个节点空间释放后,前一个节点就作为了尾节点。
  4. 对于上面的第三题删除逻辑如下

单链表各个节点的关系,单链表的中间节点(14)

E:单链表头插①:如何头插?

头插的逻辑如下

单链表各个节点的关系,单链表的中间节点(15)

②:头插代码F:单链表头删①:如何头删?

头删时注意讨论情况(这种删法粗暴直接,但是容易出现内存泄漏的问题)
头删逻辑如下

单链表各个节点的关系,单链表的中间节点(16)

上一页12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.