和大神们学习每天一题(leetcode)-Remove Nth Node From End of List
来源:互联网 发布:java调用高德api例子 编辑:程序博客网 时间:2024/06/05 20:45
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.
class Solution {public:ListNode *removeNthFromEnd(ListNode *head, int n) {ListNode *LNp1 = head, *LNp2 = head;//定义两个指针并指向头指针指向的地址if (head == NULL ||head->next == NULL)//如果头指针为空或者头指针的next为空,返回空return NULL;for (int nTemp = 0; nTemp < n - 1; nTemp++)//第二个指针先走n-1步{LNp2 = LNp2->next;}if (LNp2->next == NULL)//如果第二个指针指向链表末位,则将链表的第一个节点去掉{head = head->next;free(LNp1);LNp1 = NULL;return head;}LNp2 = LNp2->next;//第二个指针再走一步while (LNp2->next != NULL)//当第二个指针指向链表末位时第一指针指向当删除节点的前一位{LNp1 = LNp1->next;LNp2 = LNp2->next;}LNp2 = LNp1->next;//删除节点并释放空间LNp1->next = LNp1->next->next;free(LNp2);LNp2 = NULL;return head;//返回头指针}};
0 0
- 和大神们学习每天一题(leetcode)-Remove Nth Node From End of List
- LeetCode 第十九题 Remove Nth Node From End of List
- 【leetcode每日一题】NO19.Remove Nth Node From End of List
- 关于LeetCode中Remove Nth Node From End of List一题的理解
- LeetCode[Linked List]: Remove Nth Node From End of List
- 19. Remove Nth Node From End of List leetcode list
- [Leetcode]LeetCode 19:Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- [Leetcode] Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- leetcode 40: Remove Nth Node From End of List
- [LeetCode] Remove Nth Node From End of List
- Leetcode 19 Remove Nth Node From End of List
- [Leetcode] Remove Nth Node From End of List
- [LeetCode]Remove Nth Node From End of List
- LeetCode-Remove Nth Node From End of List
- [LeetCode] Remove Nth Node From End of List
- linux下input event事件,可以用后台截取键盘按下的键值,后台截取数据.....input.h
- Android开发中的sqlite_master
- xcode6 GM里面模拟器设置成IP5 IOS7.1的上下黑边
- 图像基本处理算法的简单实现(一)
- 随机数字图形化测试
- 和大神们学习每天一题(leetcode)-Remove Nth Node From End of List
- eMMC的前世今生
- SpringMVC验证框架Validation自定义注解实现传递参数到国际化资源文件
- android 系统存在多个Launcher时,设置开机自动进入默认的Launcher
- Speex manul中文版
- linux驱动学习(八) i2c驱动架构(史上最全) davinc dm368 i2c驱动分析
- nyist 46 - 最少乘法次数
- Linux根目录”/“下各个系统文件夹的含义和用途
- android 让Launcher Hotseat中的图标显示title