LeetCode203:Remove Linked List Elements
来源:互联网 发布:ansys15.0软件 编辑:程序博客网 时间:2024/06/03 16:49
Remove all elements from a linked list of integers that have value val.
Example
Given: 1 --> 2 --> 6 --> 3 --> 4 --> 5 --> 6, val = 6
Return: 1 --> 2 --> 3 --> 4 --> 5
Credits:
Special thanks to @mithmatt for adding this problem and creating all test cases.
使用一个指向头节点的指针,这样就能将这个处理过程统一起来。遍历时使用两个指针,一个指向当前节点,一个指向当前节点的前一个节点。当当前节点的值与val的值不同时,更新两个指针的值;当当前节点的值和val值相同时,删除当前节点,同时更新这两个指针。
runtime:32ms
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* removeElements(ListNode* head, int val) { ListNode * pRoot=new ListNode(0); pRoot->next=head; ListNode * cur=head; ListNode * pre=pRoot; while(cur) { if(cur->val!=val) { pre=cur; cur=cur->next; } else { pre->next=cur->next; cur=pre->next; } } return pRoot->next; }};
0 0
- LeetCode203:Remove Linked List Elements
- leetcode203 Remove Linked List Elements
- LeetCode203:Remove Linked List Elements
- leetcode203---Remove Linked List Elements
- Leetcode203. Remove Linked List Elements
- [leetcode203]Remove Linked List Elements
- leetcode203. Remove Linked List Elements
- leetcode203-Remove Linked List Elements
- Leetcode203. Remove Linked List Elements
- LeetCode203——Remove Linked List Elements
- LeetCode203—Remove Linked List Elements
- 递归——LeetCode203. Remove Linked List Elements
- Remove Linked List Elements
- Remove Linked List Elements
- Remove Linked List Elements
- Remove Linked List Elements
- Remove Linked List Elements
- Remove Linked List Elements
- C编译: 使用gdb调试
- Linux文件系统不同颜色的意义
- Assertion failed (ni > 0 && ni == ni1) in collectCalibrationData
- java web开发工程师 对面向对象思想 的不理解
- sqlserver 分页查询总结
- LeetCode203:Remove Linked List Elements
- Java Synchronized与wait notify 连用-2 简化版
- Baidu Map API 学习历程
- POST请求
- 通过代码实现RelativeLayout的布局
- JXL Excel模版下载[列合并](2)
- apache相关配置问题
- 【模板整合】SAM后缀自动机的构建
- Android Exception : JAVA_HOME is set to an invalid directory