面试中常见链表问题5:删除链表中重复元素2
来源:互联网 发布:papi 知乎 编辑:程序博客网 时间:2024/06/06 05:49
给定一个有序单链表,删除链表中重复元素,比如:1->2->3->3->4->4->5,则返回1->2->5。 解析:设置三个指针,pre、cur和next,当cur->val和next->val不相等时,更新pre = cur、cur = next和next = next->next;当cur->val和next->val相等时,向前移动next指针,直到cur->val和next->val不相等时为止。ListNode* deleteDuplicates(ListNode* head) {if(head == NULL || head->next == NULL)return head;ListNode *pHead = new ListNode(0);pHead->next = head;ListNode *pre = pHead;ListNode *cur = head;ListNode *next = head->next;while(next){if(cur->val != next->val){pre = cur;cur = next;next = next->next;continue;}while(next){if(cur->val == next->val){ListNode *tmp = next;next = next->next;delete tmp;}else{break;}}ListNode *tmp = cur;pre->next = next;cur = next;delete tmp;if(cur){next = cur->next;}else{break;}}return pHead->next;}
0 0
- 面试中常见链表问题5:删除链表中重复元素2
- 面试中常见链表问题4:删除链表中重复元素1
- 面试中常见链表问题11:在链表中删除给定元素值的节点
- 链表删除重复元素
- 面试中常见链表问题_world
- 删除链表中重复元素
- 删除链表中重复元素
- 删除链表中重复元素
- 删除链表中重复元素
- 删除链表中重复元素
- 重复元素的删除问题
- 删除ArrayList中重复元素
- 删除数组中重复元素
- 删除ArrayList中重复元素
- 删除ArrayList中重复元素
- 删除字符串中重复元素
- 删除vector中重复元素
- 删除ArrayList中重复元素
- 欢迎使用CSDN-markdown编辑器
- Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled
- 5种调优Java NIO和NIO.2的方式
- 深入理解javascript原型和闭包(完结)
- 学习WCF之路3:在IIS中寄存服务
- 面试中常见链表问题5:删除链表中重复元素2
- 51nod 1082 与7无关的数
- Mysql 开启数据的远程访问权限
- Object.keys(obj)返回参数obj可被枚举的属性
- Leetcode题解(Python): 4.Median of Two Sorted Arrays (非递归)
- android库项目设置
- 盘点:2016中国百强地产CIO高峰论坛的8大看点
- ORA-12518: TNS: 监听程序无法分发客户机连接
- 使用ajax提交form表单