删除单链表的倒数第n个元素
2013-12-31 10:36
585 查看
题目原型:
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.
这个题目比较简单,就不分析了,直接贴代码。
public ListNode removeNthFromEnd(ListNode head, int n) { //求出链表长度 int len = 0;//链表长度 ListNode p,q; p = head; while(p!=null) { len++; p = p.next; } if(n>len) return null; p = head; q = head; for(int i = 0;i<len-n;i++) { p = q; q = q.next; } //当删除的是第一个节点的时候 if(p==q) head = p.next; if(q!=null) { p.next = q.next; q.next = null; } return head; }
相关文章推荐
- Chapter 2 | Linked Lists--返回单链表倒数第n个元素及删除中间的某个节点
- 008实现一个算法从一个单链表中返回倒数第n个元素(keep it up)
- Leetcode Remove Nth Node From End of List 删除链表倒数第n个元素
- 删除单链表倒数第n个节点
- 【算法】删除单链表的倒数第N个结点
- 删除单链表中的倒数第n个节点的实现及测试程序
- 一个单链表中返回倒数第n个元素
- 笔试or面试——寻找单链表倒数第n个元素
- LeetCode 19. Remove Nth Node From End of List(删除单链表倒数第N个结点)
- 删除单链表的倒数第m个元素
- Remove Nth Node From End of List 链表删除倒数第N个元素@LeetCode
- leetcode_19. Remove Nth Node From End of List 删除单链表中的倒数第n个节点,双指针法
- 删除链表中倒数第n个元素
- 删除链表倒数第n个元素
- LeetCodet题解--19. Remove Nth Node From End of List(删除链表的倒数第n个元素)
- CareerCup之2.2 寻找单链表倒数第n个元素
- 删除链表的倒数第n个元素
- 链表4 ---- 如何一次遍历删除链表的倒数第n个元素
- leetcode 删除单链表中的倒数第k个元素
- cc150:实现一个算法从一个单链表中返回倒数第n个元素