当前位置: 首页 > news >正文

手机网站快速排名信息网站建设情况工作会

手机网站快速排名,信息网站建设情况工作会,angular做的网站大全,河源哪有做网站02.01、[简单] 移除重复节点 1、题目描述 编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。 2、解题思路 为了实现这一目标,我们可以使用一个哈希表(或集合)来记录已经遇到的节点值,逐步遍历链表并删…

02.01、[简单] 移除重复节点

1、题目描述

编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。

2、解题思路

为了实现这一目标,我们可以使用一个哈希表(或集合)来记录已经遇到的节点值,逐步遍历链表并删除重复的节点。

具体步骤如下:

  1. 从链表的第一个节点开始遍历,创建一个哈希表来记录已经遇到的节点值。
  2. 如果遇到的节点值不在哈希表中,则将该值添加到哈希表中,并继续遍历。
  3. 如果遇到的节点值已经存在于哈希表中,说明该节点是重复的节点,将其从链表中删除。
  4. 最终返回处理后的链表。

3、代码实现与详细注释

class Solution {
public:ListNode* removeDuplicateNodes(ListNode* head) {// 边界条件:如果链表为空或只有一个节点,直接返回头节点if (head == nullptr || head->next == nullptr) {return head;}// 使用一个哈希表记录已经遇到的节点值unordered_map<int, int> hash;ListNode* cur = head;  // 从链表的第一个节点开始遍历hash[cur->val]++;      // 记录第一个节点的值// 开始遍历链表的后续节点while (cur->next) {ListNode* next = cur->next;  // 记录当前节点的下一个节点// 如果下一个节点的值已经在哈希表中出现过,说明是重复节点if (hash.count(next->val)) {// 删除重复节点:将当前节点的 next 指向下下个节点cur->next = next->next;} else {// 如果下一个节点的值没有出现过,则记录该值hash[next->val]++;// 移动当前指针到下一个节点cur = next;}}// 返回去重后的链表头节点return head;}
};

4、时间与空间复杂度分析

  • 时间复杂度: O(n),其中 n 为链表的长度。我们只需要遍历链表一次,同时每个节点的值存储或查找在哈希表中的时间是常数级别。
  • 空间复杂度: O(n),因为需要使用哈希表来存储已经访问过的节点值。

这种方法效率较高,适合链表长度较大且包含重复节点的情况。

http://www.yayakq.cn/news/952886/

相关文章:

  • 完整企业网站模板齐河网站开发
  • 网站建设工具wordpress 评论表情插件
  • 视频网站后台模板网址导航网站如何做
  • 找网站做网站做网站天空彩票网站怎么做
  • 接单做公司网站站群2022年互联网营销师如何报名
  • 个人网站空间怎么做招远网站定制
  • 湖北网站建设xiduyun一般通过血液传染的病有哪些
  • 专业教育网站建设宝塔里面一个服务器做多个网站
  • 关于协会网站建设的意见专门做行业分析的网站
  • 外贸建站哪个最便宜射阳做网站多少钱
  • 邯郸兄弟建站合肥企业建站程序
  • php能开发大型网站做移动网站优化快
  • 微网站 小程序 区别网站开发与网站制作
  • 新闻标题做的好的网站无锡网络公司排名
  • 软件属于网站开发吗做网站框架
  • 蛋糕网站内容规划快速网站排名优化
  • 做最简单的网站织梦调用网站备案号
  • 做网站 零基础从哪里开始学建设自己网站的流程
  • 中国建设银行网上银行个人登录官方网站wordpress赞助功能
  • 网站建设运行网络推广渠道和方法
  • 网站群建设的意义门户网站开发公司
  • 企业网站一般多少钱wordpress亿级数据库
  • wordpress网站视频播放网页设计师岗位介绍
  • 网站logo怎么做动态图设计一个简单的网页
  • 怎样看一个网站是哪个公司做的网站开发项目风险
  • 邢台企业网站建设公司前山网站建设
  • 沈阳沈阳建设工程信息网站网站ftp根目录
  • 茂名建设公司网站网站后台管理怎么做
  • 西安网站开发公司浙江新手网络推广
  • 网站源码安装安装wordpress的目录改变了