package LEET;
import java.util.Scanner;
public class twoSum {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
while(input.hasNext()){
int n=input.nextInt();
int numbers[]=new int[n]; //记录分配的空间大小
int target; //目标值
for(int i=0;i<n;i++){
numbers[i]=input.nextInt();
}
target=input.nextInt();
int result[]=new int[2]; //再开一个数组记录所得到的值
result=twosum(numbers,target);//将所得到的地址复制给另一个数组
for(int i=0;i<2;i++){
System.out.print(result[i]);
System.out.print(' ');
}
System.out.println();
}
}
public static int[] twosum(int []numbers,int target){
int i=0;
int j=numbers.length-1;
while(i<j){
int sum=numbers[i]+numbers[j];
if(sum==target){
return new int[]{i+1,j+1};
}else if(sum<target){
i++;
}else{
j--;
}
}
return null;
}
}
Leetcode两数之和167
最新推荐文章于 2025-07-20 10:45:19 发布
本文深入探讨了LeetCode经典题目“两数之和”的解决方案,通过使用Java编程语言实现,详细介绍了如何从输入的整数数组中找出两个数,使它们的和等于特定的目标值。算法采用了双指针技术,提高了查找效率。
2937

被折叠的 条评论
为什么被折叠?



