29.删除链表的倒数第 N 个结点

var removeNthFromEnd = function(head, n) {let len = 0let curr = headwhile(curr){len++curr=curr.next}curr=headfor(let i = 0;i<len;i++){if(len-n-1<0){return head.next}if(i==len-n-1){curr.next=curr.next.nexti++}curr=curr.next}return head
};解题思路
先遍历一次链表获取链表长度,再次遍历删除该节点即可
详细解法
1.遍历一次链表获取链表长度
2.重新遍历,如果删除的是第一个,直接会头节点的下一节点即可,不是第一个就将目标节点的前一个的next指向目标节点的next,绕过目标节点,即可删除
3.返回删除后的链表
