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

本文共 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://zexga.baihongyu.com/

你可能感兴趣的文章
理解OAuth 2.0
查看>>
根据百度地图获取地址商圈的工具类
查看>>
[Android Studio] Android Studio中查看类的继承关系
查看>>
制作引导页[2]
查看>>
浅谈UML的概念和模型之UML九种图
查看>>
集合的枚举和排序
查看>>
iOS设计模式之单例模式
查看>>
mac下的virtualbox启动失败处理
查看>>
开机就提示“请安装TCP/IP协议,error=10106”的解决的方法
查看>>
hdu-----(1151)Air Raid(最小覆盖路径)
查看>>
实现开启和关闭android移动网络(转)
查看>>
【BZOJ】1621: [Usaco2008 Open]Roads Around The Farm分岔路口(dfs)
查看>>
第12届北师大校赛热身赛第二场 C. 组合数
查看>>
spin_lock &amp; mutex_lock的差别?
查看>>
Java-hibernate的映射文件
查看>>
【原】使用Json作为Python和C#混合编程时对象转换的中间文件
查看>>
适配iPhone6和iPhone6 Plus
查看>>
深入探讨this指针
查看>>
ExtJs自学教程(1):一切从API開始
查看>>
Nginx+keepalived做双机热备加tomcat负载均衡
查看>>