news 2026/5/2 1:04:57

hot100 1.两数之和

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hot100 1.两数之和

一、方法一:暴力。

1.思路:先枚举下标i,再枚举下标j,然后判断nums[i] + nums[j] == target。

2.复杂度分析:

(1)时间复杂度:O(n^2),两层for循环,其中n为nums的长度。

(2)空间复杂度:O(1),仅用到了若干额外变量。

附代码:

class Solution { public int[] twoSum(int[] nums, int target) { for(int i = 0;;i++){ //枚举i,因为题目保证有解,所以可不加遍历条件,并用无限循环省略最后的return语句 //如果加了i < nums.length,编译器反而会在编译时做静态代码分析时认为循环结束时可能没有返回值,会报错error: missing return statement for(int j = i + 1;j < nums.length;j++){ //枚举i右边的j if(nums[i] + nums[j] == target){ return new int[] {i,j}; //返回下标 } } } } }

二、方法二:哈希表

1.思路:如下图所示。

2.复杂度分析:

(1)时间复杂度:O(n),其中n为nums的长度。

(2)空间复杂度:O(n),哈希表需要O(n)的空间。

附代码:

class Solution { public int[] twoSum(int[] nums, int target) { Map<Integer,Integer> map = new HashMap<>(); for(int j = 0;;j++){//枚举j int x = nums[j]; //在左边找满足target - nums[j]的nums[i] if(map.containsKey(target - x)){ //找到了 return new int[]{map.get(target - x),j}; //返回两个数的下标 } map.put(x,j); //还没找到,先保存当前nums[j]和j至哈希表 } } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 7:11:32

基于Vue的流动人口管理系统t94nu(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末

系统程序文件列表 系统功能 用户,城市人口,流入登记,流出登记,居住证办理,人口普查,暂住证办理,户籍迁移,管辖单位,社区援助 开题报告内容 《基于Vue的流动人口管理系统设计与实现》开题报告 一、选题背景、研究意义及国内外研究现状 1. 选题背景 随着我国城市化进程的快速…

作者头像 李华
网站建设 2026/4/23 18:53:16

数字孪生如何重塑现代制造体系?

概述 在制造业不断迈向高质量发展的过程中&#xff0c;传统依赖经验和事后分析的管理模式正逐渐显露出局限性。生产流程复杂、设备数量庞大、工艺参数多变&#xff0c;使得制造企业在效率提升、质量控制和成本管理方面面临更高要求。数字孪生技术的出现&#xff0c;为制造业提…

作者头像 李华
网站建设 2026/5/1 10:08:51

从工程资产到即时工具:AI 原生软件开发与氛围编程的范式分化

目录 前言1. 两种开发模式的起点差异1.1 AI 原生软件开发的基本立场1.2 氛围编程的基本立场 2. 对软件工程原则的态度分化2.1 AI 原生软件对传统工程原则的延续2.2 氛围编程对工程约束的主动放弃 3. 技术栈与工具链的分野3.1 AI 原生软件的技术栈特征3.2 氛围编程的极简技术形态…

作者头像 李华
网站建设 2026/4/23 14:33:57

Seed-Coder-8B-Base vs GitHub Copilot:谁才是真正的代码王者?

Seed-Coder-8B-Base vs GitHub Copilot&#xff1a;谁才是真正的代码王者&#xff1f; 在今天&#xff0c;一个开发者打开编辑器写代码时&#xff0c;可能已经不再“孤军奋战”——AI 正悄然坐在你身边&#xff0c;提笔、补全、纠错&#xff0c;甚至帮你写出整个函数。这种变化…

作者头像 李华
网站建设 2026/4/21 15:46:42

使用Miniconda定制专属AI镜像,提升GPU算力利用率

使用Miniconda定制专属AI镜像&#xff0c;提升GPU算力利用率 在现代AI研发的战场上&#xff0c;算力就是生产力。一块A100 GPU每小时的使用成本可能高达数十元&#xff0c;但在许多团队中&#xff0c;这些昂贵资源却常常因“环境问题”而闲置——依赖冲突、CUDA版本不匹配、包…

作者头像 李华
网站建设 2026/4/21 22:15:40

监控运维面试题.运维工程师面试题

一、基础概念题(8 题) 监控的核心目标是什么?运维监控的 “黄金指标” 有哪些? 参考答案: 核心目标:提前预警故障、快速定位根因、保障业务连续性、优化资源利用率。 黄金指标(参考 Google SRE 标准): 可用性(Availability):服务正常运行时间占比(如 99.99%); 延…

作者头像 李华