美文网首页
翻转链表之m,n

翻转链表之m,n

作者: 瞬铭 | 来源:发表于2019-09-25 14:52 被阅读0次

https://leetcode.com/problems/reverse-linked-list-ii/
翻转链表第m和第n个之前的元素

 public ListNode reverseBetween(ListNode head, int m, int n) {
        ListNode res = new ListNode(-1);
        ListNode pre = new ListNode(-1);
        ListNode start = new ListNode(-1);
        pre.next = head;
        res = pre;
        int cnt = 0;

        while (head != null) {
            if (cnt < m - 1) {
                pre = pre.next;
                head = head.next;
                cnt++;
                continue;
            }

            if (cnt == m - 1) {
                start = pre;
                pre = pre.next;
                head = head.next;
                cnt++;
                continue;
            }


            if (cnt > m-1 && cnt < n) {
                ListNode tmp = head.next;
                head.next = pre;
                pre = head;
                head = tmp;
                cnt++;
                continue;
            }

            if (cnt == n) {
                //如果放这里,有一个例子可以作证有问题  input:[3,5],m=1,n=2
//                start.next.next = head;
//                start.next = pre;
                break;
            }
        }
        start.next.next = head;
        start.next = pre;
        return res.next;
    }

相关文章

  • Swift - LeetCode - 翻转链表

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

  • 36. 翻转链表 II

    描述 翻转链表中第m个节点到第n个节点的部分 注意事项 m,n满足1 ≤ m ≤ n ≤ 链表长度 样例 给出链表...

  • 翻转链表之m,n

    https://leetcode.com/problems/reverse-linked-list-ii/翻转链表...

  • LintCode 翻转链表 II

    题目 翻转链表中第m个节点到第n个节点的部分 注意事项m,n满足1 ≤ m ≤ n ≤ 链表长度 代码

  • 翻转链表 II

    翻转链表中第m个节点到第n个节点的部分 注意事项 m,n满足1 ≤ m ≤ n ≤ 链表长度 下面是一个傻逼解法。。。

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

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

  • lintcode 翻转链表

    三十五题为翻转一个单链表,三十六题为翻转链表中第m个节点到第n个节点的部分样例给出链表1->2->3->4->5-...

  • 链表的部分翻转

    声明: 本总结仅为个人学习总结,以防止遗忘而作,不得转载和商用。题目:给定一个链表,翻转该链表从m到n的位置,要求...

  • leetCode进阶算法题+解析(十三)

    反正链表2 题目:反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明:1 ≤ m ≤ n ≤ 链表长度...

  • leetcode的题目92

    反转链表二 反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明:1 ≤m≤n≤ 链表长度。 示例: 输...

网友评论

      本文标题:翻转链表之m,n

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