LeetCode 19. Remove Nth Node From End of List(删除链表)
2016-05-19 06:35
447 查看
原题网址:https://leetcode.com/problems/remove-nth-node-from-end-of-list/
Given a linked list, remove the nth node from the end of list and return its head.
For example,
Note:
Given n will always be valid.
Try to do this in one pass.
方法:设置计数器。
另一种实现方式:
Given a linked list, remove the nth node from the end of list and return its head.
For 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.
Try to do this in one pass.
方法:设置计数器。
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { ListNode delete = head; int pos = -n; ListNode current = head; while (current.next != null) { current = current.next; pos ++; if (pos > 0) delete = delete.next; } if (pos == -1) return head.next; delete.next = delete.next.next; return head; } }
另一种实现方式:
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { ListNode start = new ListNode(0); start.next = head; int count = 0; ListNode current = start; ListNode remove = start; while (current.next != null) { count ++; current = current.next; if (count > n) remove = remove.next; } remove.next = remove.next.next; return start.next; } }
相关文章推荐
- Node.js+Express配置入门教程详解
- nodejs ENOSPC
- hadoop SecondNamenode详解
- 【软件】IDEA web项目里包含node_modules 一直处于make状态
- DOMNodeRemoved事件 删除元素之后触发的事件
- 利用heroku+mongoLab 部署Node 运用
- Node
- node.js 安装和 配置Sublime Text2的Nodejs
- childNodes和Children的区别
- nodejs window下安装与配置淘宝镜像
- 配置 Sublime Text 开发node.js和js-beautify-sublime(代码格式化)
- Node.js EventEmitter事件发射器
- node-webkit:开发桌面+WEB混合型应用的神器
- Node.js刷新session过期时间的实现方法推荐
- 【leetcode】237. Delete Node in a Linked List
- 关于nodejs iconv的编码无效 说明
- 利用Express搭建空白工程
- 使用WebStorm调试node工程
- Node.js返回JSONP详解
- 简单HDFS使用Journalnode HA部署