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

LeetCode 594. Longest Harmonious Subsequence

题目

  • 对和谐数组的定义是,数组内的最大元素 - 最小元素的值为 1
  • 给定一给数组,返回用其子序列可形成的和谐数组的最大长度

思路

  • 对数组的元素频率进行统计 freq
  • 遍历数组的元素 num,判断是否 num + 1 存在,这过程中的 freq[num] + freq[num+1] 就是和谐数组的长度
  • 记录过程中的最大值

代码

class Solution {
public:int solution1(vector<int>& nums) {set<int> st;map<int, int> ht;for (auto num : nums) {ht[num]++;st.insert(num);}int ans = 0;for (auto n : st) {if (st.count(n+1)) {ans = max(ans, ht[n] + ht[n+1]);}}return ans;}int solution2(vector<int>& nums) {sort(nums.begin(), nums.end());map<int, int> mp;for (auto num : nums) {mp[num]++;}int ans = 0;for (int i = 0; i < nums.size(); i+= mp[nums[i]]) {int num = nums[i];int len = mp[num];if (i + len < nums.size() && nums[i + mp[num]] == num + 1) {ans = max(ans, mp[num] + mp[num + 1]);}}return ans;}int findLHS(vector<int>& nums) {//return solution1(nums);return solution2(nums);}
};
http://www.lqws.cn/news/578377.html

相关文章:

  • Hyperledger Fabric 入门笔记(二十一)Fabric V2.5 使用K8S部署测试网络
  • UI_NGUI_三大基础控件
  • 祛魅 | 在祛魅中成长,在成长中祛魅
  • DAY 43 预训练模型
  • 完整的ROS节点来实现果蔬巡检机器人建图与自主避障系统
  • 《从量子奇境到前端优化:解锁卡西米尔效应的隐藏力量》
  • API接口安全-1:身份认证之传统Token VS JWT
  • VMware 在局域网环境将虚拟机内部ip 端口开放
  • 使用SRS+ffmpeg实现https推流flv
  • python+uniapp基于微信小程序面向品牌会员的在线商城系统
  • 如何让Excel自动帮我们算加减乘除?
  • 基于llama-factory+ollama+vllm加速大模型训推生产
  • 深入 ARM-Linux 的系统调用世界
  • C++ std::list详解:深入理解双向链表容器
  • 分库分表之实战-sharding-JDBC
  • 【数论 拆位法】P10308 「Cfz Round 2」Osmanthus|普及+
  • 车辆工程中的压力传感技术:MEMS与薄膜传感器的实战应用
  • 从设计到开发一个小程序页面
  • Java + 阿里云 Gmsse 实现 SSL 国密通信
  • 用基础模型构建应用(第四章)AI Engineering: Building Applications with Foundation Models学习笔记
  • Springboot + vue + uni-app小程序web端全套家具商场
  • MongoDB 安装使用教程
  • 第81题:搜索旋转排序数组Ⅱ
  • 【软考高项论文】论信息系统项目的干系人管理
  • 百度文库智能PPT月访问量超3400万,用户规模翻倍增长
  • 中钧科技亮相2025 亚欧商品贸易博览会,赋能数字经济新未来!
  • pyspark driver 上传pod本地文件到对象存储
  • AWS 开源 Strands Agents SDK,简化 AI 代理开发流程
  • Hive SQL 实战:电商销售数据分析全流程案例
  • Git远程仓库迁移与分支关联技术分享