[LeetCode]594. Longest Harmonious Subsequence
题目描述
思路
哈希表统计每个元素出现的次数
代码
#include <iostream>
#include <unordered_map>
#include <vector>
#include <algorithm>
using namespace std;
class Solution {
public:
int findLHS(vector<int>& nums) {
unordered_map<int, int> um;
for (int num : nums)
++um[num];
int res = 0;
for (auto p : um) {
if (um.count(p.first - 1))
res = max(res, p.second + um[p.first - 1]);
if (um.count(p.first + 1))
res = max(res, p.second + um[p.first + 1]);
}
return res;
}
};
int main() {
vector<int> nums = { 1,1,1,1 };
Solution s;
cout << s.findLHS(nums) << endl;
system("pause");
return 0;
}
本文介绍了解决LeetCode上第594题“最长和谐子序列”的方法,通过使用哈希表统计元素出现次数,实现快速查找符合和谐条件的数对,给出了一段C++代码示例。
384

被折叠的 条评论
为什么被折叠?



