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

【LeetCode热题100】哈希

1.两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。

你可以按任意顺序返回答案。

示例 1:

输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

示例 2:

输入:nums = [3,2,4], target = 6
输出:[1,2]

示例 3:

输入:nums = [3,3], target = 6
输出:[0,1]
var twoSum = function(nums, target) {for(var i = 0;i<nums.length;i++){for(var j = i+1;j<nums.length;j++){if(nums[i]+nums[j]==target){return [i,j]}}}return [-1,-1]
};

2.字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

示例 1:

输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"]
输出: [["bat"],["nat","tan"],["ate","eat","tea"]]

示例 2:

输入: strs = [""]
输出: [[""]]

示例 3:

输入: strs = ["a"]
输出: [["a"]]
var groupAnagrams = function(strs) {//创建一个Map实例var m = new Map();for (var str of strs) {var k = str.split("").sort().join(",");if (!m.has(k)) {m.set(k, []);}m.get(k).push(str);}//return Array.from(m.values());return [...m.values()];
};

3.最长连续序列

给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。

请你设计并实现时间复杂度为 O(n) 的算法解决此问题。

示例 1:

输入:nums = [100,4,200,1,3,2]
输出:4
解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。

示例 2:

输入:nums = [0,3,7,2,5,8,4,6,0,1]
输出:9
var a = (nums) => {var maxlength = 1;var start = 0;///nums = Array.from(new Set(nums)).sort();nums = [...new Set(nums)].sort((a, b) => {return a - b;});for (var i = 0; i < nums.length; i++) {if (nums[i] - nums[i - 1] === 1) {maxlength = Math.max(maxlength, i - start + 1);} else {start = i;}}return maxlength;
};
var nums = [100, 4, 200, 1, 3, 2];
console.log(a(nums));

http://www.lryc.cn/news/459896.html

相关文章:

  • Java的四种循环语句
  • Qt杂记目录
  • 项目开发--基于docker实现模型容器化服务
  • C语言 | Leetcode C语言题解之第477题汉明距离总和
  • Bug剖析
  • HI3516DV500 相机部分架构初探
  • 训练yolo系列出现问题mAP, R, P等为零
  • 数字媒体技术基础:色度子采样(4:4:4、4:2:2 、4:2:0)
  • tkinter库的应用小示例:文本编辑器
  • 信息抽取数据集处理——RAMS
  • SpringBoot+XXL-JOB:高效定时任务管理
  • openpyxl -- 简介
  • 滚雪球学MySQL[8.3讲]:数据库中的JSON与全文检索详解:从数据存储到全文索引的高效使用
  • position定位静态定位/绝对定位/相对定位
  • 2024年09月CCF-GESP编程能力等级认证C++编程三级真题解析
  • Web自动化Demo-PHP+Selenium
  • Python速成笔记——知识(GUI自动化处理屏幕和按键输出)
  • 计算机是如何输入存储输出汉字、图片、音频、视频的
  • springboot系列--web相关知识探索五
  • 开源商城系统crmeb phpstudy安装配置
  • 【论文阅读笔记】Bigtable: A Distributed Storage System for Structured Data
  • linux从入门到精通-从基础学起,逐步提升,探索linux奥秘(十一)--rpm管理和计划任务
  • 【C++几种单例模式解读及实现方式】
  • QT开发--串口通信
  • 数据库(至少还的再花两天 )
  • 网络安全公司及其主要产品介绍
  • orjson:高性能的Python JSON库
  • 常见几大排序算法
  • Linux下CMake入门
  • 网络资源模板--Android Studio 实现简易记事本App