河北省 建设执业注册中心网站网站关键词优化培训
web/
2025/9/28 9:35:40/
文章来源:
河北省 建设执业注册中心网站,网站关键词优化培训,百度百科合作模式,唐山哪里建设飞机场1. 题目
编写代码#xff0c;移除未排序链表中的重复节点。保留最开始出现的节点。
示例1:输入#xff1a;[1, 2, 3, 3, 2, 1]输出#xff1a;[1, 2, 3]示例2:输入#xff1a;[1, 1, 1, 1, 2]输出#xff1a;[1, 2]提示#xff1a;
链表长度在[0, 20000]范围内。
链表元…1. 题目
编写代码移除未排序链表中的重复节点。保留最开始出现的节点。
示例1:输入[1, 2, 3, 3, 2, 1]输出[1, 2, 3]示例2:输入[1, 1, 1, 1, 2]输出[1, 2]提示
链表长度在[0, 20000]范围内。
链表元素在[0, 20000]范围内。进阶 如果不得使用临时缓冲区该怎么解决
来源力扣LeetCode 链接https://leetcode-cn.com/problems/remove-duplicate-node-lcci 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。
2. 解题
2.1 哈希set记录出现过的
O(n)空间、时间复杂度
class Solution {
public:ListNode* removeDuplicateNodes(ListNode* head) {if(!head || !head-next)return head;unordered_setint s;ListNode *prev head, *cur head-next;s.insert(head-val);while(cur){if(!s.count(cur-val)){s.insert(cur-val);prev cur;}elseprev-next cur-next;cur cur-next;}return head;}
};2.2 暴力求解
每个节点往后遍历所有的节点跟其值相等的删除O(1)空间复杂度O(n2)时间复杂度
class Solution {
public:ListNode* removeDuplicateNodes(ListNode* head) {if(!head || !head-next)return head;ListNode *prev head, *cur head-next, *pcNULL;int v;while(prev){v prev-val;pc prev;cur prev-next;while(cur){if(cur-val ! v){pc cur;}else{pc-next cur-next;}cur cur-next;}prev prev-next;}return head;}
};
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/83263.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!