当前位置: 首页> 汽车> 新车 > 南宁公司网站开发_厦门在线制作网站_宁波seo网络推广_互联网广告投放公司

南宁公司网站开发_厦门在线制作网站_宁波seo网络推广_互联网广告投放公司

时间:2025/8/27 16:12:06来源:https://blog.csdn.net/m0_54244065/article/details/142882728 浏览次数: 0次
南宁公司网站开发_厦门在线制作网站_宁波seo网络推广_互联网广告投放公司

1.题目要求:

`
给你一个整数数组 nums 和一个链表的头节点 head。从链表中移除所有存在于 nums 中的节点后,返回修改后的链表的头节点。

示例 1:

输入: nums = [1,2,3], head = [1,2,3,4,5]

输出: [4,5]

解释:

在这里插入图片描述
移除数值为 1, 2 和 3 的节点。

输入: nums = [1], head = [1,2,1,2,1,2]

输出: [2,2,2]

解释:
在这里插入图片描述
移除数值为 1 的节点。

示例 3:

输入: nums = [5], head = [1,2,3,4]

输出: [1,2,3,4]

解释:
在这里插入图片描述
链表中不存在值为 5 的节点。
2 题目代码:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* modifiedList(vector<int>& nums, ListNode* head) {//把数组存入set容器中multiset<int> array(nums.begin(),nums.end());ListNode* cur = head;//然后去遍历链表while(cur->next != NULL){//如果要删除的结点在头部,则把头结点移向下一个结点if(cur == head&&array.find(cur->val) != array.end()){head = cur->next;delete cur;cur = head;}else if(array.find(cur->next->val) != array.end()){//如果删除的结点在一下节点时,把下一结点指向赋给结点,然后删除下一个结点ListNode* p = cur->next;cur->next = p->next;p->next = NULL;delete p;}else{cur = cur->next;}}return head;}
};
关键字:南宁公司网站开发_厦门在线制作网站_宁波seo网络推广_互联网广告投放公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: