美文网首页
java算法链表反转

java算法链表反转

作者: Bfmall | 来源:发表于2022-01-18 17:41 被阅读0次

遍历法:
遍历法就是在链表遍历的过程中将指针顺序置换


image.png

代码实现:

public static Node reverseList(Node node) {
    Node pre = null;
    Node next = null;
    while (node != null) {
        next = node.next;
        node.next = pre;
        pre = node;
        node = next;
    }
    return pre;
}

依旧是1->2->3->4

准备两个空结点 pre用来保存先前结点、next用来做临时变量
在头结点node遍历的时候此时为1结点
next = 1结点.next(2结点)
1结点.next=pre(null)
pre = 1结点
node = 2结点
进行下一次循环node=2结点
next = 2结点.next(3结点)
2结点.next=pre(1结点)=>即完成2->1
pre = 2结点
node = 3结点
进行循环...

相关文章

  • 数据结构 - 单向链表及相关算法

    单向链表 链表常见算法 链表反转

  • java算法链表反转

    遍历法:遍历法就是在链表遍历的过程中将指针顺序置换 代码实现: 依旧是1->2->3->4 准备两个空结点 pre...

  • java算法题---链表反转

    链表反转主要的思路是交换前后两个指针

  • 15反转链表

    题目描述 输入一个链表,反转链表后,输出新链表的表头。 Java实现

  • 使用Java实现单向链表,并完成链表反转。

    使用Java实现单向链表,并完成链表反转。 算法和数据结构是程序员逃不过的一个坎,所以趁着闲余时间,开始学习基础的...

  • 算法笔记 - 单链表反转(Java)

    单链表反转使用p、q、r三个指针配合工作,使得两个节点间的指向反向,同时用r记录剩下的链表。基本流程如下图所示: ...

  • Java算法(6):反转单链表

    1.遍历实现 通用实现方法,速度最快 /*** 遍历实现 通用实现方法** @param head* @retur...

  • 单链表反转问题

    基本问题 如何将单链表反转? 单链表结构定义 算法实现 进阶问题 如何将单链表在指定区间内进行反转? 问题分析 这...

  • 链表

    链表是一类大的算法题。 一般分为一下几部分: 链表反转 链表合并 我们分别进行下讨论。 1. 链表反转比较典型的例...

  • 算法-链表反转

    leecode 206链表反转:https://leetcode-cn.com/problems/reverse-...

网友评论

      本文标题:java算法链表反转

      本文链接:https://www.haomeiwen.com/subject/vtokhrtx.html