/*

    • @lc app=leetcode.cn id=19 lang=javascript
    • [19] 删除链表的倒数第 N 个结点
      */

    // @lc code=start
    /**

    • Definition for singly-linked list.
    • function ListNode(val, next) {
      1. this.val = (val===undefined ? 0 : val)
      1. this.next = (next===undefined ? null : next)
    • }
      /
      /*
    • @param {ListNode} head
    • @param {number} n
    • @return {ListNode}
      */
      let val = {
      val:1,
      next:{
      val:2,
      next:{
      val:3,
      next:{
      val:4,
      next:{
      val:5
      }
      }
      }
      }
      }
      var removeNthFromEnd = function(head, n) {
      const dummy = new ListNode()
      dummy.next = head;
      let pointOne = dummy;
      let pointTwo = dummy;
      let i = 0;
      while(pointTwo!= null){
      if(i>n){
      pointOne = pointOne.next;
      }
      pointTwo = pointTwo.next;
      i++
      }
      pointOne.next = pointOne.next.next;
      return dummy.next
      };
      console.log(removeNthFromEnd(val,3))

    // @lc code=end