Leetcode 19. Remove Nth Node From End of List (Easy) (cpp)
2016-07-12 12:46
555 查看
Leetcode 19. Remove Nth Node From End of List (Easy) (cpp)
Tag: Linked List, Two Pointers
Difficulty: Easy
Tag: Linked List, Two Pointers
Difficulty: Easy
/* 19. Remove Nth Node From End of List (Easy) 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. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* removeNthFromEnd(ListNode* head, int n) { if (n < 1 || head == NULL) return head; ListNode *p = head, *q = head, *q_prev = NULL; for (int i = 0; i < n - 1; i++) p = p -> next; while (p -> next) { p = p -> next; q_prev = q; q = q -> next; } if (q_prev == NULL) return head -> next; else { q_prev -> next = q -> next; return head; } } };
相关文章推荐
- nodejs下的图形处理库gm在windows环境的安装
- NODEJS mongoose 增删改查
- hadoop节点nodemanager启动失败原因小结~
- 关于nodejs的npm命令无反应的解决方案
- LeetCode - 24. Swap Nodes in Pairs
- 基于nodeJs express 框架的图片上传和编辑(引用美图编辑工具)上传小示例
- 理解inode
- Permission denied: user=root, access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-xhd
- datanode节点下线/删除/退役 Decommission Datanode
- node版本n模块升级的路径问题
- nodejs的express自动生成项目框架-2016
- nodejs之log4js日志记录模块简单配置使用
- 关于nodejs项目移植问题说明
- (转)Edge实现NodeJS与.NET互操作(包括UI界面示例)
- 有趣的Node
- 有趣的Node
- 记录---nodejs 安装
- nodejs进行自动化测试
- nodejs内置模块os-操作系统模块
- win系统下nodejs安装及环境配置