美文网首页
链表翻转

链表翻转

作者: 编程的猫 | 来源:发表于2021-09-27 11:50 被阅读0次

单链表

  /**
     * 单链表
     */
    public static class Linked {
        private String value;
        private Linked next;

        public Linked(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }

        public Linked getNext() {
            return next;
        }

        public void setNext(Linked next) {
            this.next = next;
        }
    }

递归实现

    /**
     * 链表翻转,递归实现
     *
     * @param head head
     * @return
     */
    public Linked flipByRecursion(Linked head) {
        if (head == null || head.next == null) return head;

        Linked tailLinked = flipByRecursion(head.next);

        head.next.setNext(head);
        head.setNext(null);

        return tailLinked;
    }

循环实现

  /**
     * 循环实现
     *
     * @param head head
     * @return
     */
    public Linked flipByLoop(Linked head) {
        if (head == null || head.next == null) return head;

        Linked next = null;
        Linked pre = null;

        while (head != null) {
            next = head.next;
            head.next = pre;
            pre = head;
            head = next;
        }

        return pre;
    }

相关文章

  • 翻转链表

    翻转链表 描述翻转一个链表 样例给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->nul...

  • 25. K 个一组翻转链表

    K个一组反转链表 翻转链表给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它...

  • 链表翻转

    给定单向链表,返回翻转后的链表

  • 链表

    1.翻转链表链表的定义 翻转 快慢指针找链表 的中间位置 3.有序链表的合并 4.判断链表中是否有环解法1: 借助...

  • Swift - LeetCode - 翻转链表

    题目 翻转链表 问题: 翻转链表中第m个节点到第n个节点的部分 说明: m,n满足1 ≤ m ≤ n ≤ 链表长度...

  • K 个一组翻转链表(递归,Kotlin)

    25. K 个一组翻转链表 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它...

  • leetcode第九十二题—反转链表 II

    又是一道升级题,还记得原来的翻转链表嘛,这个是要求指定m和n翻转链表。或许你忘了链表翻转怎么做,我编一个口诀:要问...

  • 【LeetCode】25.K个一组翻转链表

    题目描述 25.K个一组翻转链表 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k是一个正整数...

  • 翻转单链表

    翻转单链表 方法一:将单链表头插到一个新链表中 浪费空间,不过简单 方法二:使用三个指针遍历单链表,逐个点进行翻转...

  • 【Leetcode】【链表】025-Reverse Nodes

    k个一组翻转链表 给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表。k 是一个正整数,它的值小于或等于...

网友评论

      本文标题:链表翻转

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