zoukankan      html  css  js  c++  java
  • 92. Reverse Linked List II(js)

    92. Reverse Linked List II

    Reverse a linked list from position m to n. Do it in one-pass.

    Note: 1 ≤ m ≤ n ≤ length of list.

    Example:

    Input: 1->2->3->4->5->NULL, m = 2, n = 4
    Output: 1->4->3->2->5->NULL
    题意:对链表从起始位置和终止位置进行翻转
    代码如下:
    /**
     * Definition for singly-linked list.
     * function ListNode(val) {
     *     this.val = val;
     *     this.next = null;
     * }
     */
    /**
     * @param {ListNode} head
     * @param {number} m
     * @param {number} n
     * @return {ListNode}
     */
    var reverseBetween = function(head, m, n) {
        let start = new ListNode(-1);
        start.next=head;
        let cur=start;
        let pre,front,last;
        for(let i=1;i<=m-1;i++) cur=cur.next;
        pre=cur;
        last=cur.next;
        for(let 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 start.next;
        
    };
  • 相关阅读:
    DRF JWT认证基础
    Shell简单脚本
    DockerFile案例
    Shell基础知识
    DockerFile基础知识
    tensorflow
    使用cv2将图片分割成相等的部分
    序列化心得
    python正则化表达式
    python--匿名函数(lambda)
  • 原文地址:https://www.cnblogs.com/xingguozhiming/p/10707305.html
Copyright © 2011-2022 走看看