链表篇
思路:
先走一遍记录链表长度
再走到对应的点,然后删除
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val = val; }* ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode removeNthFromEnd(ListNode head, int n) {//哨兵节点ListNode dummy =new ListNode(0,head);int length=0;ListNode temp=head;while(temp!=null){length++;temp=temp.next;}ListNode cur=dummy;for(int i=1;i<length-n+1;i++){cur=cur.next;}cur.next=cur.next.next;return dummy.next;}
}