leetCode,leetcode Longest Consecutive Sequence

 2023-10-18 阅读 27 评论 0

摘要:#include <iostream> #include <vector> #include <unordered_map>// 時間復雜度是O(n), 空間復雜度O(n) using namespace std;class Solution1 { public:int longestConsecutive(const vector<int> &nums){unordered_map<int, bool> used;
#include <iostream>
#include <vector>
#include <unordered_map>// 時間復雜度是O(n), 空間復雜度O(n)
using namespace std;class Solution1
{
public:int longestConsecutive(const vector<int> &nums){unordered_map<int, bool> used;for (auto i: nums) used[i] = false;       // 自動匹配變量類型  建立一個 hash mapint longest=0;for (auto i:nums){if(used[i])       // truecontinue;int length=1;used[i] = true;for(int j=i+1; used.find(j) != used.end(); ++j){used[j] = true;   // 向兩邊查找,找到了就置true,繼續查找. 找不到就退出循環++length;}for (int j=i-1; used.find(j) != used.end(); --j){used[j] = true;++length;}longest = max(longest, length);}return longest;}
};int main()
{vector<int> nums={100, 4, 200, 1, 3, 2};Solution1 s;int length;length = s.longestConsecutive(nums);cout << length << endl;
}

轉載于:https://www.cnblogs.com/o-v-o/p/9980307.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/149621.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息