083 Remove Duplicates from Sorted List [Leetcode]
2015-08-09 22:03
381 查看
题目内容:
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given 1->1->2, return 1->2.
Given 1->1->2->3->3, return 1->2->3.
题目比较简单,只需要判断当前节点是否需要删除。从Leetcode时间上看,还有更快的方法,然而在discuss中看了一下更快的方法,发现逻辑是相同的,然而没有释放被删除的节点,因此会出现内存泄露,虽然时间快了。
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given 1->1->2, return 1->2.
Given 1->1->2->3->3, return 1->2->3.
题目比较简单,只需要判断当前节点是否需要删除。从Leetcode时间上看,还有更快的方法,然而在discuss中看了一下更快的方法,发现逻辑是相同的,然而没有释放被删除的节点,因此会出现内存泄露,虽然时间快了。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* deleteDuplicates(ListNode* head) { if(head == NULL || head->next == NULL) return head; ListNode *p(head->next), *pre(head); while(p != NULL) { if(p->val == pre->val) { pre->next = p->next; delete p; p = pre->next; } else { pre = p; p = p->next; } } return head; } };
相关文章推荐
- atitit.html编辑器的设计要点与框架选型 attilax总结
- 读书观点
- linux 命令之 watch
- atitit.html编辑器的设计要点与框架选型 attilax总结
- 循环数组的最大子段和
- CSS3结构性伪类
- poj 2632
- 计蒜客 难题题库 027 三值排序
- Eclipse搭建Spring开发环境
- 【杂文】离散化的两种不同姿势
- 单链表实现代码
- css3属性选择器
- centos常用命令
- OpenGL ES 模板
- DSP5509A——环境搭建出现的错误解决
- 计蒜客 难题题库 026 等差数列
- 分享一个很好用的验证码插件代码
- leetCode(55):Minimum Window Substring(limits.h头文件)
- Spring学习笔记一(Spring简单介绍)
- 计蒜客 难题题库 025 两数之和