LeetCode算法题--刷题第一天

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

(译:给定一个整数数组,返回两个数字的索引,使它们相加得到一个特定目标值。您可以假设每个输入都只有一个解决方案,而您可能不会使用相同的元素两次。)

Example:

Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1]

 代码实现:(参考)

 1     import java.util.HashMap;
 2     import java.util.Map;
 3
 4     public class Solution {
 5         public static int[] twoSum(int[] nums, int target) {
 6             int[] result = new int[2];
 7             Map<Integer,Integer> map = new HashMap();
 8             for(int i=0; i<nums.length; i++){
 9                 if(map.containsKey(target - nums[i])){
10                     if(map.get(target - nums[i]) > i){
11                         result[0] = i;
12                         result[1] = map.get(target - nums[i]);
13                     }else{
14                         result[1] = i;
15                         result[0] = map.get(target - nums[i]);
16                     }
17                     return result;
18                 }
19                 map.put(nums[i], i);
20             }
21             return result;
22         }
23
24         public static void main(String[] args) {
25             int[] nums = {3,2,4};
26             int target = 6;
27             int[] result = new int[2];
28             result = twoSum(nums,target);
29             System.out.println(result[0] + " " + result[1]);
30         }
31     }  

原文地址:https://www.cnblogs.com/dwystyle/p/8440083.html

时间: 2024-10-15 21:09:52

LeetCode算法题--刷题第一天的相关文章

有效单词词广场——算法面试刷题5(for google),考察数学

给定一个单词序列,检查它是否构成一个有效单词广场.一个有效的单词广场应满足以下条件:对于满足0≤k<max(numRows numColumns)的k,第k行和第k列对应的字符串应该相同,. 给定的单词数量至少为1,且不超过500.单词长度至少为1,不超过500.每个单词只包含小写英文字母a-z. 您在真实的面试中是否遇到过这个题?  是 题目纠错 样例 样例1 输入: [ "abcd", "bnrt", "crmy", "dty

算法比赛+刷题小技巧总结

算法总结 --由于刚开始写一些正规的算法题,所以写下这些东西来记录自己学的新东西 1.针对数据比较大的数,long类型的数据已经满足不了了,所以需要使用long long型数据,一般在题目条件中都有暗示. 用法:long long a; scanf("%lld",&bb); 2.常用库函数调用: a)       #include<algorithm> i.            常用函数:max(); ii.            sort(a,a+n,bmp);

有效的括号序列——算法面试刷题4(for google),考察stack

给定一个字符串所表示的括号序列,包含以下字符: '(', ')', '{', '}', '[' and ']', 判定是否是有效的括号序列. 括号必须依照 "()" 顺序表示, "()[]{}" 是有效的括号,但 "([)]" 则是无效的括号. 您在真实的面试中是否遇到过这个题? 样例 样例 1: 输入:"([)]" 输出:False 样例 2: 输入:"()[]{}" 输出:True 挑战 O(n)的时间

python入门、python数据分析(numpy、matplotlib、sklearn等)tensflow、爬虫、机器学习、深度学习、自然语言处理、数据挖掘、机器学习项目实战、python全栈、PHP、java、java web、openCV、hadoop、matlab、android、数据结构算法和刷题等教学视频

扫描二维码加好友购买视频,绝对优惠,谢谢支持. python入门和进阶熟练教学视频 入门: 进阶: python数据分析教学视频 python数据分析晋级班 tensorflow教程及实战 python爬虫教学 机器学习课程 深度学习课程 机器学习项目班 自然语言处理教学视频 python全栈教学视频 数据挖掘视频 PHP教学视频 java java web openCV教学视频 Hadoop教学视频 matlab教学 andriod教学视频 数据结构算法班及面试班 原文地址:https://w

LeetCode算法第四题

# 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000.## 示例 1:## 输入: "babad"# 输出: "bab"# 注意: "aba" 也是一个有效答案.# 示例 2:## 输入: "cbbd"# 输出: "bb"## 来源:力扣(LeetCode)# 链接:https://leetcode-cn.com/problems/longest-palindromic

2016年10月15日 算法竞赛刷题所得

1.开灯问题 a[i] = !a[i] 赋相反的值: 注意输入输出: 2.错位输入 常量字符串的使用getchar 3.回文词 常量字符串申明 isalpha()函数的使用 运用两个变量决定字符串在二维字符数组中的位置 4猜数字游戏提示 表示无限循环与while(1)相似,需要在中途通过break跳出 5.最小字典序问题 运用循环比较最优字典序

leetcode力扣刷题系列python——3、无重复字符的最长子串

题目: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3. 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1. 解法: 采用哈希表法:设定左右双指针l和r,遍历字符串:哈希表存储某字符s[i]最新在字符串中出现的位置index + 1,key, value

网络流24题刷题记录

题目一:飞行员配对方案问题 一群飞行员和另一群飞行员之间有的可以配对,有的不能配对,求最多可以配多少对? 典型二分图最大匹配问题.可以用匈牙利算法 或者 加上源点汇点之后跑最大流.[感觉第二个打错的概率还低一些]. [还是介绍一下匈牙利算法吧][看白书大法好!] 从左边(s集)一个未盖点出发(还有没有和任何人匹配的点)出发,顺次经过未选边->选边->未选边.....[这样的路叫做交替路] 如果路径当中经过一个未盖点[这样的交替路叫增广路]...那么将所有的选边变成不选,不选的边选上,就可以多一

oj刷题——第十五周C++习题 对象转换

Description 定义一个Teacher(教师)类(教师号,姓名,性别,薪金)和一个Student(学生)类(学号,姓名,性别,成绩),二者有一部分数据成员是相同的,num(号码),name(姓名),sex(性别).编写程序,将一个Student对象(学生)转换为Teacher(教师)类,只将以上3个相同的数据成员移植过去.可以设想为: 一位学生大学毕业了,留校担任教师,他原有的部分数据对现在的教师身份来说仍然是有用的,应当保留并成为其教师数据的一部分. Input 一个教师的信息和一个学