- 1、题目描述:
- 2、题目链接:
https://www.nowcoder.com/practice/20ef0972485e41019e39543e8e895b7f?tpId=117&&tqId=34983&rp=1&ru=/ta/job-code-high&qru=/ta/job-code-high/question-ranking
-3、 设计思想:
详细操作流程看下图:
-4、视频讲解链接B站视频讲解
-5、代码:
c++版本:
class Solution {
public:
/**
*
* @param numbers int整型vector
* @param target int整型
* @return int整型vector
*/
vector<int> twoSum(vector<int>& numbers, int target) {
vector<int>res;// 用来返回结果
for(int i = 0;i < numbers.size();i ++){//遍历每个数
int temp = target - numbers[i];//现在拿出了numbers[i],那么我们需要在数组里面找target - numbers[i]
for(int j = i + 1;j < numbers.size();j ++)
{
if(temp == numbers[j])//如果找到了temp就意味着两个数都找到了,可以直接返回结果了
{
res.push_back(i + 1);
res.push_back(j + 1);
return result;
}
}
}
return result;
}
};
Java版本:
import java.util.*;
public class Solution {
/**
*
* @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
public int[] twoSum (int[] numbers, int target) {
int[] res = {0,0}; // 用来返回结果
for(int i = 0;i < numbers.length;i ++)//遍历每个数
{
int temp = target - numbers[i];//现在拿出了numbers[i],那么我们需要在数组里面找target - numbers[i]
for(int j = i + 1;j < numbers.length;j ++)
{
if(temp == numbers[j])//如果找到了temp就意味着两个数都找到了,可以直接返回结果了
{
res[0] = i + 1;
res[1] = j + 1;
return res;
}
}
}
return res;
}
}
Python版本:
#
#
# @param numbers int整型一维数组
# @param target int整型
# @return int整型一维数组
#
class Solution:
def twoSum(self , numbers , target ):
# write code here
res = [] #用来返回结果
for i in range(len(numbers)): #遍历每个数
temp = target - numbers[i] #现在拿出了numbers[i],那么我们需要在数组里面找target - numbers[i]
for j in range(i+1,len(numbers)):
if temp == numbers[j]:#如果找到了temp就意味着两个数都找到了,可以直接返回结果了
res.append(i+1)
res.append(j+1)
return res
return res
京公网安备 11010502036488号