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

免费刷赞网站推广免费拨打12355可以找团员密码吗

免费刷赞网站推广免费,拨打12355可以找团员密码吗,excel导入wordpress,企业推广策划方案🚀 解法一:哈希表找“连续序列起点” ✅ 思路总结 用 unordered_set 存储所有数字,查找某个数是否存在的时间是 O(1)。 遍历每个数字 x,只从 x 是“连续序列起点”时才开始向右找: 也就是说,只有当 x - 1…

在这里插入图片描述

🚀 解法一:哈希表找“连续序列起点”

✅ 思路总结

  1. unordered_set 存储所有数字,查找某个数是否存在的时间是 O(1)。

  2. 遍历每个数字 x只从 x 是“连续序列起点”时才开始向右找

    • 也就是说,只有当 x - 1 不在集合中时,才从 x 开始数连续的。
  3. x 开始,不断检查 x+1, x+2... 是否存在,一直到找不到为止。

  4. 每次记录最长的连续长度。


✅ C++ 代码

class Solution {
public:int longestConsecutive(vector<int>& nums) {unordered_set<int> st(nums.begin(), nums.end()); // 把所有元素放入哈希集合int ans = 0;for (int x : st) { // 遍历哈希集合中的每个数if (st.contains(x - 1)) {// 如果存在 x-1,说明 x 不是连续序列的起点,跳过continue;}// 否则 x 是连续序列的起点int y = x + 1;while (st.contains(y)) {y++; // 一直向右找连续数字}// [x, y) 之间是连续序列,长度是 y - xans = max(ans, y - x);}return ans;}
};

✅ 示例解释

示例 1:nums = [100, 4, 200, 1, 3, 2]

先构造集合 st = {1, 2, 3, 4, 100, 200}

遍历集合中的每个数:

当前数 x是否起点(x-1不在集合)找到的连续序列序列长度
100[100]1
4否(3在)--
200[200]1
1[1, 2, 3, 4]4
3否(2在)--
2否(1在)--

最终答案就是最长的序列长度 4


✅ 时间 & 空间复杂度分析

  • 时间复杂度

    • 遍历集合:O(n)
    • 每个连续序列最多只遍历一次,即每个元素最多进入一次 while 循环
    • 总体:O(n)
  • 空间复杂度

    • 使用了一个 unordered_set 来存储所有元素 → O(n)

✅ 优点总结

优点说明
✅ 高效时间复杂度 O(n),比排序更快
✅ 简洁逻辑清晰,代码结构简单
✅ 无重复计算通过“只从起点开始”的策略避免重复统计

✅ 通俗一句话总结

把所有数字丢进集合,只从那些“没有左邻居”的数出发,一路数右边的连续数,记录最长的长度!


🚀 解法二:哈希 + 并查集(更适合带区间合并需求的场景)

✅ 思路概括:

我们把每个数字当作并查集中的一个点,如果某个数 xx+1 都存在,就将它们连起来。

最后统计并查集中最长的连通块长度,即为最长连续序列长度。


✅ C++代码

class Solution {
public:unordered_map<int, int> parent;   // 存储每个数的父节点unordered_map<int, int> size;     // 存储以某个节点为根的集合大小(即连续序列长度)// 查找函数:带路径压缩int find(int x) {if (parent[x] != x)parent[x] = find(parent[x]);return parent[x];}// 合并两个集合void unite(int x, int y) {int rootX = find(x);int rootY = find(y);if (rootX == rootY) return;  // 已在同一个集合中// 合并:把小的合并到大的parent[rootX] = rootY;size[rootY] += size[rootX];}int longestConsecutive(vector<int>& nums) {// 初始化并查集for (int x : nums) {if (parent.count(x)) continue; // 避免重复插入重复元素parent[x] = x;size[x] = 1;// 如果相邻的数存在,就合并if (parent.count(x - 1)) unite(x, x - 1);if (parent.count(x + 1)) unite(x, x + 1);}int ans = 0;for (auto& [k, v] : size) {ans = max(ans, v); // 所有集合中找最大值}return ans;}
};

✅ 示例说明

nums = [100, 4, 200, 1, 3, 2] 为例:

  • 插入 100 → 单独成一个集合。
  • 插入 4 → 单独成集合。
  • 插入 200 → 单独成集合。
  • 插入 1 → 单独成集合。
  • 插入 3 → 发现 4 存在 → 合并 3 和 4。
  • 插入 2 → 发现 1 和 3 存在 → 合并 2 和 1,再合并 2 和 3,最终变成 [1,2,3,4] 一个大集合,大小为 4。

✅ 复杂度分析

  • 时间复杂度:近似 O(n)(每次 findunion 的复杂度为 O(α(n)),近似常数)。
  • 空间复杂度:O(n)

✅ 对比第一种解法

比较项解法一:哈希找起点解法二:并查集合并
时间复杂度O(n)O(n)
实现难度⭐⭐(较简单)⭐⭐⭐⭐(中高级)
思路适用范围连续整数序列查找任意需要区间合并


文章转载自:

http://uUA78A4d.rfpxq.cn
http://UC278vBj.rfpxq.cn
http://RJtu31X7.rfpxq.cn
http://x5CAWSj9.rfpxq.cn
http://vGsYF9kd.rfpxq.cn
http://jFG9l8S8.rfpxq.cn
http://DOIA6RCx.rfpxq.cn
http://7rKq3jOx.rfpxq.cn
http://t3Sb9c1S.rfpxq.cn
http://aQepdeIe.rfpxq.cn
http://bUrd51Mf.rfpxq.cn
http://Hb5SnbiP.rfpxq.cn
http://DclSJIai.rfpxq.cn
http://JPFBv6j9.rfpxq.cn
http://DRgbj1x8.rfpxq.cn
http://OmeAixlG.rfpxq.cn
http://tohjCHPR.rfpxq.cn
http://Bh3yCPmP.rfpxq.cn
http://Nr37ZzJG.rfpxq.cn
http://Otq1ZUde.rfpxq.cn
http://gRLABaYL.rfpxq.cn
http://BjslXsS3.rfpxq.cn
http://PK5hAX7y.rfpxq.cn
http://2akAkV9x.rfpxq.cn
http://QZkhO3co.rfpxq.cn
http://mCOf6gc4.rfpxq.cn
http://PlWdCQn8.rfpxq.cn
http://QM9cCt4t.rfpxq.cn
http://lOooThiW.rfpxq.cn
http://jRbYV0Af.rfpxq.cn
http://www.dtcms.com/wzjs/777617.html

相关文章:

  • 苏州网站营销公司做cpa怎么建立自己网站
  • 海阳网站建设网站充值系统怎么做
  • 网站的企业风采怎么做怎么做网页签到
  • 东莞免费做网站营销型网站建设sempk
  • 极简 单页面网站模板建设一个视频网站
  • 哪个网站可以免费学编程网页设计网站制作公司
  • 教师进修学校网站建设方案重庆全网推广
  • 网络和网站的区别深夜一个人适合看的电影
  • 用云主机做网站wordpress图片本地化工具
  • 定州住房和城乡建设局网站个人空间备案网站名称
  • 平顶山城市住房城乡建筑网站营销软文模板
  • 嘉兴网站优化联系方式网站建设的要求有哪些方面
  • 网站开发好做吗资阳优化团队资讯
  • 商城网站营销系统源码菜鸟零基础如何自学编程
  • 电白网站建设公司wordpress发布公告
  • 昆明网站制作内容wordpress会员等级插件
  • 桂林北站到阳朔网页制作app
  • 网站下拉单设计欣赏众筹网站建设 网站定制开发
  • 高质量网站外链建设大揭秘配件查询网站制作
  • 网站后期维护需要注意什么网站查询地址
  • 进入建设银行的网站就打不了字深圳比较好的设计网站公司吗
  • 找做金融的网站有哪些方面旅游网站制作方案
  • 广州网站建设哪里买永济市网站建设
  • 做网上竞彩网站合法吗秦皇岛网站关键词
  • 精美网页源码网站福州网站建设精英
  • 湛江网站公司wordpress采集豆瓣插件
  • 商城网站怎么自己搭建wordpress如何修改电子邮箱
  • 南阳做网站的wordpress 小工具天气
  • 网站论坛建设wordpress 短视频主题
  • 做网站做的好的公司有哪些深圳网站建设小程序