[LeedCode OJ]#203 Remove Linked List Elements
2015-09-08 20:04
465 查看
【 声明:版权所有,转载请标明出处,请勿用于商业用途。 联系信箱:libin493073668@sina.com】
题目链接:https://leetcode.com/problems/remove-linked-list-elements/
题意:
给定一个链表和一个数x,要求删除链表中所有与x相等的结点,返回新的链表
思路:
很简单,直接遍历整个链表,一旦找到与x相等的结点就直接跳过,对于连续几个与x相等的结点要小心处理
题目链接:https://leetcode.com/problems/remove-linked-list-elements/
题意:
给定一个链表和一个数x,要求删除链表中所有与x相等的结点,返回新的链表
思路:
很简单,直接遍历整个链表,一旦找到与x相等的结点就直接跳过,对于连续几个与x相等的结点要小心处理
/** * 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) { while(head && head->val==val) head = head->next; ListNode *cur = head; ListNode *newlist = new ListNode(0); ListNode *ptr = newlist; while(cur) { while(cur && cur->val == val) cur = cur->next; if(cur==nullptr) break; ListNode *pnext = cur->next; ptr->next = cur; cur = pnext; ptr = ptr->next; } ptr->next = nullptr; return newlist->next; } };
相关文章推荐
- 把一个数组遍历倒序放到另一个数组中,数组取值是c:out value
- POJ 1273:Drainage Ditches 网络流模板题
- JAVA上机作业 2.6
- knockout需要注意的
- C/C++ 拾遗
- BZOJ4009 : [HNOI2015]接水果
- SPOJ 375 QTREE Query on a tree 树链剖分水题
- vim的taglist插件的使用和配置
- POSTMAN测试SpringMVC RESTFul风格的服务端接口始终得不到值
- 分析信号质量用功率谱分析还是频谱分析?
- Linux USB驱动框架分析
- 包装类的使用
- 电路板热转印实践
- hdu 2095 find your present (2)
- Mac虚拟机安装win7教程
- 删除环状单向链表中的重复元素的操作
- bzoj1012:最大数
- JVM原理和优化
- iOS原生扫描二维码
- 关于IOC和DI的理解