题解 | #链表中的节点每k个一组翻转#

链表中的节点每k个一组翻转

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


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


/**
  * 
  * @param head ListNode类 
  * @param k int整型 
  * @return ListNode类
  */
function reverseKGroup( head ,  k ) {
    // write code here
    if(head == null) return;
    let dummy_a=head,dummy_b=head;
    for(let i=0;i<k;i++){
        if(dummy_b==null) return head;
        dummy_b=dummy_b.next;
    }
    
    const newHead=reverseNode(dummy_a,dummy_b);
    
    dummy_a.next=reverseKGroup(dummy_b,k);
    
    return newHead;
}
    
function reverseNode(a,b){
    let prev=null,cur=a;
    while(cur!==b){
        const next=cur.next;
        cur.next=prev;
        prev=cur;
        cur=next;
    }
    return prev;
}


module.exports = {
    reverseKGroup : reverseKGroup
};
全部评论

相关推荐

叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务