LeetCode #1 Two Sum C# Solution
来源:互联网 发布:php自助建站系统源码 编辑:程序博客网 时间:2024/05/17 21:56
LeetCode #1 Problem
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.
Example:
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
基本上看到题第一反应都是一个O(N^2)的双重循环,但是在大数据下必然会TLE,所以考虑其他算法。
可以想到,寻找两个数相加得到target可以转换为target减去ans[0]然后在nums[]中寻找ans[1]是否存在。同时,哈希表拥有查找效率为O(1)的优势,于是这样一重循环就可以找到答案了。
C# Code public int[] TwoSum(int[] nums, int target) { Hashtable ht = new Hashtable(); List<int> list = new List<int>(); list = nums.ToList<int>(); int i = 0; foreach (int num in list) { if (!ht.Contains(num)) ht.Add(num,i); i++; } i = 0; foreach (int num in list) { int temp = target - num; if (ht.Contains(temp)&&i!=(int)ht[temp]) { int[] ans = new int[2]; ans[0] = i; ans[1] = (int)ht[temp]; return ans; } i++; } return null; }
0 0
- LeetCode #1 Two Sum C# Solution
- [LeetCode 1] Two Sum solution
- [LeetCode] Two Sum, Solution
- 【LeetCode】C# 1、Two Sum
- LeetCode 1. Two Sum Python Solution
- leetcode: two sum, hash search solution, java. O(n)
- LeetCode 1. Two Sum java solution with HashMap
- LeetCode 1 - Two Sum
- leetcode 1 Two Sum
- Leetcode【1】:Two Sum
- [leetcode 1] Two Sum
- 【leetcode-1】Two Sum
- [leetcode 1] Two Sum
- [Leetcode] 1 - Two Sum
- LeetCode (1) Two Sum
- LeetCode 1:《Two Sum》
- LeetCode | #1 Two Sum
- leetcode-1 Two Sum
- Leetcode 第 1 题(Two Sum)
- Objective-C之初始化
- 机器学习:贝叶斯总结_3:线性回归和贝叶斯回归
- spring bean
- linux下信号
- LeetCode #1 Two Sum C# Solution
- libiconv编译出错解决
- font-face 自定义字体,让页面文艺起来~~~
- 例程8. PCA_PWM -- 慕司板IAP15
- 第六周项目一-分数类的雏形(2)
- eclipse中批量修改Java类文件中引入的package包路径 - [工具使用]
- 模态框
- Android 源码下载 编译.
- BJTU 1703 Ficer的春运 (DFS)