LeetCode中如何解决两数之和输入有序数组的问题
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下LeetCode中如何解决两数之和输入有序数组的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!0x01,问题简述给定一个已按照升序排列 的有序数组,找到两个数使
千家信息网最后更新 2026年11月01日LeetCode中如何解决两数之和输入有序数组的问题
小编给大家分享一下LeetCode中如何解决两数之和输入有序数组的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
0x01,问题简述
给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。
说明:
返回的下标值(index1 和 index2)不是从零开始的。
你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。
'0x02,示例
示例:输入: numbers = [2, 7, 11, 15], target = 9输出: [1,2]解释: 2 与 7 之和等于目标数 9 。因此 index1 = 1, index2 = 2 。
0x03,题解思路
本题使用双指针的思路进行解决
0x04,题解程序
public class TwoSumTest3 {public static void main(String[] args) {int[] numbers = {2, 7, 11, 15};int target = 9;int[] twoSum = twoSum(numbers, target);for (int num : twoSum) {System.out.print(num + "\t");}}public static int[] twoSum(int[] numbers, int target) {if (numbers == null || numbers.length == 0) {return new int[0];}int i = 0;int j = numbers.length - 1;while (i < j) {if (numbers[i] + numbers[j] == target) {return new int[]{i+1, j+1};} else if (numbers[i] + numbers[j] < target) {i++;} else if (numbers[i] + numbers[j] > target) {j--;}}return new int[]{-1, -1};}}
0x05,题解程序图片版
看完了这篇文章,相信你对"LeetCode中如何解决两数之和输入有序数组的问题"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
之和
输入
有序
数组
问题
题解
两个
思路
标值
目标
示例
程序
篇文章
相同
元素
函数
升序
图片
完了
指针
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
喔噻互联网科技有限公司
广州为想互联网科技有限公司
盈实互联网科技
互联网科技英文
凡科互联网科技
远拓互联网科技
天下捷融互联网科技
长亮科技 互联网金融
互联网科技大会
山东吉时兔互联网科技有限公司
汉立互联网科技有限公司联系电话
互联网与医疗科技
辽宁互联网新科技
深圳市优智互联网科技有限公司
呼和浩特新华互联网科技学院
深圳市罗太互联网科技有限公司
为客找房互联网科技公司怎么样
众安科技工业互联网合作
互联网金融运营模式中的金融科技
山东亿川互联网科技有限责任公司
花魁咖啡
互联网科技网
互联网佳科技有限公司
致骋互联网科技
互联网女皇 腾讯科技
时间互联网络科技
齐家互联网科技有限公司
允成互联网科技有限公司融资
世界互联网领先科技成果获奖
互联网科技手机排行榜