92. 反转链表 II

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

示例:

输入: 1->2->3->4->5->NULL, m = 2, n = 4
输出: 1->4->3->2->5->NULL

代码

class Solution {
public:
    ListNode *reverseBetween(ListNode *head, int m, int n) {
        ListNode *dummy = new ListNode(-1);
        dummy->next = head;
        ListNode *cur = dummy;
        ListNode *pre, *front, *last;
        for (int i = 1; i <= m - 1; ++i) cur = cur->next;
        pre = cur;
        last = cur->next;
        for (int i = m; i <= n; ++i) {
            cur = pre->next;
            pre->next = cur->next;
            cur->next = front;
            front = cur;
        }
        cur = pre->next;
        pre->next = front;
        last->next = cur;
        return dummy->next;
    }
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 你我都是指针 绕着各自的心脏转动 周而复始 渐渐地 日子在不经意间溜走 发条松了 转轴绣了 年岁 将发丝染成雪白 ...
    隔岸1216阅读 152评论 0 1
  • 我目前还没有经验,感觉这些东西都学不到位。 这些问题我深有体会,我学过过一些关于管理学的知识。虽然自己还没有进入社...
    昊昊先生阅读 286评论 0 0
  • 我是一名普普通通的幼儿园教师,从教9年来,我一直努力工作,用心投入到教育教学工作中,在教育的园地里奉献着自...
    陕县813许鑫阅读 882评论 0 4
  • 春秋时晋国的魏武子是权贵、武将。 初病时留下遗嘱,将爱妾在其死后改嫁,临终时改立遗嘱,要求陪葬。 魏颗是他的儿子,...
    李炜微言阅读 236评论 1 1
  • 本期预测 独胆:7 二胆:27 三胆:127 五码组合:12579(含组三) 六码组合:012579(含组三) 精...
    德嘉伟业阅读 238评论 0 0