博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
19. Remove Nth Node From End of List
阅读量:6126 次
发布时间:2019-06-21

本文共 1152 字,大约阅读时间需要 3 分钟。

Given a linked list, remove the n-th node from the end of list and return its head.

Example:Given linked list: 1->2->3->4->5, and n = 2.After removing the second node from the end, the linked list becomes 1->2->3->5.

Note:

Given n will always be valid.

Follow up:

Could you do this in one pass?

难度:medium

题目:

给定一链表,移除其倒数第n个结点。
注意:n总是合法数

思路:双指针

Runtime: 6 ms, faster than 98.72% of Java online submissions for Remove Nth Node From End of List.

Memory Usage: 27 MB, less than 39.84% of Java online submissions for Remove Nth Node From End of List.

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode(int x) { val = x; } * } */class Solution {    public ListNode removeNthFromEnd(ListNode head, int n) {        ListNode dummyHead = new ListNode(0);        dummyHead.next = head;        ListNode ptr = dummyHead,lastNPtr = dummyHead;        while (ptr.next != null) {            if (--n < 0) {                lastNPtr = lastNPtr.next;            }                        ptr = ptr.next;        }                lastNPtr.next = lastNPtr.next.next;                return dummyHead.next;    }}

转载地址:http://mbbua.baihongyu.com/

你可能感兴趣的文章
JQuery-EasyUI Datagrid数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)
查看>>
并发和并行的区别
查看>>
php小知识
查看>>
Windows下安装、运行Lua
查看>>
Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解(二)
查看>>
初识中间件之消息队列
查看>>
MyBatis学习总结(三)——优化MyBatis配置文件中的配置
查看>>
Spring常用注解
查看>>
我的友情链接
查看>>
PCS子层有什么用?
查看>>
查看端口,关闭端口
查看>>
代码托管平台简介
查看>>
linux:yum和apt-get的区别
查看>>
Sentinel 1.5.0 正式发布,引入 Reactive 支持
查看>>
如何对网站进行归档
查看>>
数据库之MySQL
查看>>
2019/1/15 批量删除数据库相关数据
查看>>
数据类型的一些方法
查看>>
Mindjet MindManager 2019使用教程:
查看>>
游戏设计的基本构成要素有哪些?
查看>>