题解 | #删除链表的倒数第n个节点#

删除链表的倒数第n个节点

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

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

/**
  * 
  * @param head ListNode类 
  * @param n int整型 
  * @return ListNode类
  */
function removeNthFromEnd( head ,  n ) {
    // write code here
    if(!head)return null
    let quick = head;
    let slow = head;
    for(let i = 0;i<n;i++){
        quick = quick.next;
    }
  //这一步真是太关键了
    if(quick == null){
        return head.next
    }
    while(quick.next){
        quick = quick.next;
        slow = slow.next;
    }
    slow.next = slow.next.next
    return head
    
}
module.exports = {
    removeNthFromEnd : removeNthFromEnd
};
全部评论

相关推荐

合适才能收到offe...:招聘上写这些态度傲慢的就别继续招呼了,你会发现hr和面试官挺神的,本来求职艰难就可能影响一些心态了,你去这种公司面试的话,整个心态会炸的。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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