题解 | #链表内指定区间反转#

链表内指定区间反转

http://www.nowcoder.com/practice/b58434e200a648c589ca2063f1faf58c

 * function ListNode(x){
 *   this.val = x;
 *   this.next = null;
 * }
 */

/**
  * 
  * @param head ListNode类 
  * @param m int整型 
  * @param n int整型 
  * @return ListNode类
  */
function reverseBetween( head ,  m ,  n ) {
    // write code here
     let newHead=new ListNode(0)
    newHead.next=head
    head=newHead
    let p=head,q=head.next
    for(let i=1;i<m;i++){
        p=p.next
    }
    q=p.next
    for(let i=m;i<n;i++){
        let temp=p.next
        p.next=q.next
        q.next=q.next.next
        p.next.next=temp
    }
    return head.next
}
module.exports = {
    reverseBetween : reverseBetween
};

alt

全部评论

相关推荐

被普调的六边形战士很高大:项目经历貌似和专业或者求职方向没大关系?
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务