(本人专注于刷leetcode全部题 c# 语言算法,后期发视频教程)
1:暴力破解法:
int[] nn = new int[] { };
for (int i = 0; i < nums.Length; i++)
{
for (int j = i + 1; j < nums.Length; j++)
{
if (nums[i] + nums[j] == target)
{
nn = new int[] { i, j };
}
}
}
return nn;
2: 哈希表
public class Solution {
public int[] TwoSum(int[] nums, int target) {
int[] result = new int[2];
Dictionary<int, int> table = new Dictionary<int, int>();
for (int i = 0; i < nums.Length; i++)
{
if (table.ContainsKey(nums[i]))
{
result[0] = table[nums[i]];
result[1] = i;
break;
}
else
{
if (!table.ContainsKey(target-nums[i]))
{
table.Add(target - nums[i], i);
}
}
}
return result;
}
}
Author Master_Li:
Author:the subject from LeetCode.com I summed the most condensed answer.,Hope to help used c# programmer .
(以上为C#解决方法,可以直接运行在控制台)