1. 两数之和

1. 两数之和

)

原题链接:

1. 两数之和

https://leetcode.cn/problems/two-sum/description/

完成情况:

解题思路:

复制代码
/**
 * 进阶:你可以想出一个时间复杂度小于 O(n2) 的算法吗?
 *  只会存在一个有效答案
 *
 * 两数之和,主要要实现的就是,我怎么快速在一堆数里面,找一个数
 * 那就需要用到集合
 *
 * @param nums
 * @param target
 * @return
 */

参考代码:

java 复制代码
package 日常Java程序测试.代码随想录.哈希表;

import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

public class __1两数之和 {
	/**
	 * 进阶:你可以想出一个时间复杂度小于 O(n2) 的算法吗?
	 *  只会存在一个有效答案
	 *
	 * 两数之和,主要要实现的就是,我怎么快速在一堆数里面,找一个数
	 * 那就需要用到集合
	 *
	 * @param nums
	 * @param target
	 * @return
	 */
	public int[] twoSum(int[] nums, int target) {
		//然后这道题,还要返回下标,那么你就可以key等于nums[i],v等于i
		Map<Integer,Integer> haveNum = new HashMap<Integer,Integer>();
		for (int i=0;i< nums.length;i++){
			if (haveNum.containsKey(target - nums[i])){
				return new int[]{haveNum.get(target-nums[i]),i};
			}
			haveNum.put(nums[i],i);
		}
		return new int[]{1};
	}
}

错误经验吸取

相关推荐
迷途之人不知返22 分钟前
算法系列2:滑动窗口
算法
Herbert_hwt31 分钟前
C语言零基础入门:循环控制与数据类型详解
c语言·数据结构·算法
晚风醉蝶2 小时前
1-6-插入排序-InsertionSort
java·数据结构·排序算法
Tyler_TXZ2 小时前
C++C语言之——二叉树
c语言·开发语言·数据结构·c++·二叉树
Tisfy2 小时前
LeetCode 3090.每个字符最多出现两次的最长子字符串:二重循环 / 滑动窗口
算法·leetcode·字符串·题解·模拟·双指针·滑动窗口
-dzk-2 小时前
【技巧】LC 136.只出现一次的数字
算法·异或
有点。2 小时前
C++二叉树二(练习题)
数据结构·c++·算法·图论
专注仿真3 小时前
问答大模型技术方案算法实现-RAPTOR树构建算法与BEG集成使用
python·算法
zlinear数据采集卡4 小时前
数据采集卡从入门到精通(10):采样率与分辨率的核心关系——反比律、架构分布与过采样
arm开发·嵌入式硬件·算法·fpga开发·架构·开源
白狐_7985 小时前
408 数据结构|线索二叉树两题详解:先序线索化后的空链域 + 中序前驱/后继判断
c语言·数据结构·链表