LeetCode 594. 最长和谐子序列(哈希表的运用)

    技术2025-08-26  12

    最长和谐子序列 用一个map<int,vector<int>>记录一下数组中元素出现的下标,或者用map<int,int>记录元素出现的次数,是一种很常见的数组处理的方式。

    class Solution { public: int findLHS(vector<int>& nums) { map<int,int> mp; int ans = 0; for(int i=0;i<nums.size();i++){ mp[nums[i]]++; } vector<int> keys; for(auto it:mp){ keys.push_back(it.first); } for(int i=1;i<keys.size();i++){ if(keys[i]==keys[i-1]+1){ ans = max(mp[keys[i]]+mp[keys[i-1]],ans); } } return ans; } };
    Processed: 0.014, SQL: 9