leetcode(83)—— 删除已排序链表重复元素(Remove Duplicates from Sorted List)
2016-04-20 13:39
766 查看
Remove Duplicates from Sorted List
官方答案(Java):
Remove Duplicates from Sorted List
思路:维护两指针(ListNode *p1, ListNode *p2,p2 始终指向 p1 的next),分别指向当前节点值和下一个节点,如果当前节点的值等于下一个节点的值,则…,如果不相等,则…。
上述实现可能略显啰嗦:
官方答案(Java):
Remove Duplicates from Sorted List
思路:维护两指针(ListNode *p1, ListNode *p2,p2 始终指向 p1 的next),分别指向当前节点值和下一个节点,如果当前节点的值等于下一个节点的值,则…,如果不相等,则…。
class Solution { public: ListNode* deleteDuplicates(ListNode* head) { if (!head) return NULL; ListNode *p1 = head, *p2 = head->next; while (p1 && p2) { if (p1->val == p2->val) { p1->next = p2->next; p2 = p1->next; // p2 始终指向 p1 的 next } else { p1 = p2; p2 = p1->next; // p2 始终指向 p1 的 next } } return head; } };
上述实现可能略显啰嗦:
class Solution { public: ListNode* deleteDuplicates(ListNode* head) { ListNode *cur = head; while (cur && cur->next) { if (cur->val == cur->next->val) cur->next = cur->next->next; else cur = cur->next; } return head; } };
相关文章推荐
- 关于mysql与myeclipse兼容的小问题
- class.getResource()和getResourceAsStream乱码问题
- mysql开启慢查询日志及查询--windows
- webui78一个小巧高效灵活的web前端UI组件库,包括表格、树、表单验证、图片按钮、对话框、面板等组件
- Windows+Git+TortoiseGit+COPSSH 安装图文教程
- 【Arduino官方教程第一辑】示例程序 2-1 LED闪烁进阶
- iOS 保证视频的清晰度和流畅度
- mysql之判断数据存在
- 王高利:Linux_缓存_free
- JS中Number类型的NaN值
- uboot主Makefile分析1
- Block理解
- 最全最多的黑客教程资料
- Toolbar和Drawerlayout的基本使用
- Android 实现简易下载管理器 (暂停、断点续传、多线程下载)
- 远程连接MySQL, 10038问题
- robotframework笔记18
- 彻底领悟javascript中的exec与match方法
- 前端开发工程师技能树
- 关于ps中的锯齿