ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

BM9 删除链表的倒数第n个节点

BM9 删除链表的倒数第n个节点

目录

题目链接

题目

解题思路

代码


题目链接

删除链表的倒数第n个节点_牛客题霸_牛客网

题目

解题思路

先利用快慢指针找到删除位置的前一个节点,然后进行删除即可(具体就是快指针先移动n+1个,因为要找到删除指针的前一个节点)

代码
import java.util.*;/** public class ListNode {*   int val;*   ListNode next = null;*   public ListNode(int val) {*     this.val = val;*   }* }*/public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param head ListNode类 * @param n int整型 * @return ListNode类*/public ListNode removeNthFromEnd (ListNode head, int n) {// write code hereListNode dummyNode=new ListNode(-1);dummyNode.next=head;ListNode slow=dummyNode,fast=dummyNode;for(int i=0;i<=n;i++){if(fast!=null){fast=fast.next;}else{return null;}}while(fast!=null){fast=fast.next;slow=slow.next;}slow.next=slow.next.next;return dummyNode.next;}
}

返回列表