leetcode题1Two sum 练习
2016-08-07 16:37
246 查看
题目为:
给一个整数数组, 返回数组中的两数之和等于指定值的两数在数组中的下标.
Example:
附上该例源码:
给一个整数数组, 返回数组中的两数之和等于指定值的两数在数组中的下标.
Example:
Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1].
public int[] TwoSum(int[] nums, int target) { int[] result=new int[2];//创建一个返回数组; for (int j = 0; j < nums.Length; j++)//{1,4,5,7,9,10};//{9,6,5,3,1,0}外层循环,传进的数组赋值 { for (int k = j+1; k < nums.Length; k++)//创建内层循环,内层循环主要是让temp[i]=target-nums[i];让temp[i]的值与数组nums[i]比自己大的元素比较看是否相等。 { if (target - nums[j] == nums[k]) { result[0] = j;//相等就记录该位置。 result[1] = k;//记录相等的位置。 } } } return result; }
附上该例源码:
namespace ConsoleApplication1 { class addtwonum { public static void Main(string[] args) { int[] num = { 2, 4, 4, 4, 4, 10 };//{9,6,5,3,1,0} int[] result = getnum(num, 8); for (int i = 0; i < result.Length; i++) { Console.WriteLine(result[i]); } Console.ReadLine(); } // //{1,2,3,4,6} tagart =5 //a[0]+a[3] ,a[1]+a[2] [0,3],[1,2] private static int[] getnum(int []nums,int tagart) { int[] result=new int[2]; int[] temp=new int[nums.Length]; //for (int i = 0; i < nums.Length; i++) // temp[i] = tagart - nums[i]; for (int j = 0; j < nums.Length; j++)//{2, 4, 4, 7, 9, 10};//{6,4,4,-1,-2,-3}|{7,5,5,2,0,-1} { for (int k = j+1; k < nums.Length; k++) { //result[0] = j; //result[1] = k; if (tagart - nums[j] == nums[k]) { //j = nums.Length - 1; //k = nums.Length; result[0] = j; result[1] = k; } } } return result; } } }
相关文章推荐
- leetCode练习(94)
- leetCode练习(20)
- leetCode练习(23)
- 『LeetCode』练习第三弹_算法5题
- 『LeetCode』练习第六弹_算法9题
- leetcode练习 Reverse Pairs
- 【LeetCode008-009算法/编程练习C++】string转int(atoi),判断数字是否是回文
- leetCode练习(43)
- Leetcode练习- Reverse Integer
- Leetcode练习-Grey Code
- 常见算法练习leetcode
- LeetCode编程练习 - Search Insert Position学习心得
- LeetCode编程练习 - Merge Sorted Array学习心得
- leetCode练习(53)
- leetCode练习(64)
- LeetCode编程练习 - Move Zeroes学习心得
- leetCode练习(69)
- leetCode练习(77)
- leetCode练习(80)
- leetcode 55 动态规划练习