乐扣Java版个人代码分享-链表篇(删除链表的倒数第N个节点)

19.删除链表的倒数第N个节点

题目要求:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。

例子

给定一个链表: 1->2->3->4->5, 和 n = 2.

当删除了倒数第二个节点后,链表变为 1->2->3->5.

代码

 public static ListNode addTwoNumbers(ListNode l1, ListNode l2) {
     
       ListNode n1 = head;
        ListNode n2 = head;
        while(n != 0){
     
            --n;
            head = head.next;
        }
        if(head == null){
     
            n1 = n1.next;
            return n1;
        }else {
     
            head = head.next;
            while (head != null) {
     
                head = head.next;
                n1 = n1.next;
            }
            n1.next = n1.next.next;
            return n2;
    }

注意事项

待优化

内存

你可能感兴趣的:(链表,java,数据结构,单链表)