海南网站建设监理,竞争对手网站,旅游网站前台模板,怎么制作网站记事本解法一#xff1a;将ListNode放入ArrayList中#xff0c;要删除的元素为num list.size()-n。如果num 0则将头节点删除#xff1b;否则利用num-1个元素的next删除第num个元素。
/*** Definition for singly-linked list.* public class ListNode {* int val;* Lis…解法一将ListNode放入ArrayList中要删除的元素为num list.size()-n。如果num 0则将头节点删除否则利用num-1个元素的next删除第num个元素。
/*** 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) {ListListNode list new ArrayList(); ListNode prev head;while(prev ! null){list.add(prev);prev prev.next;}int num list.size()-n;if(num0){headhead.next;}else{prev list.get(num-1); // 得到要删除的数的前一个数prev.next prev.next.next;}return head;}
}注意
如果num 0则将头节点删除否则利用num-1个元素的next删除第num个元素。