力扣 167. 两数之和 II - 输入有序数组

目录

一、题目

二、思路

由于数组是 非递减顺序排列 的,利用该先验知识,可以设置两个指针在数组的起始和末尾,相向前进,与暴力枚举相比可以加快寻找速度。

三、代码

java 复制代码
class Solution {
    public int[] twoSum(int[] numbers, int target) {
        int n = numbers.length;
        int i = 0, j = n - 1;
        int sum;
        while (i < j) {
            sum = numbers[i] + numbers[j];
            if (sum > target) {
                j--;
            } else if (sum < target) {
                i++;
            } else {
                break;
            }
        }
        return new int[]{i + 1, j + 1};// 注意题目中数组下标是从 1 开始的
    }
}
相关推荐
扫地的小何尚20 小时前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
数据皮皮侠AI2 天前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
开开心心就好2 天前
系统清理工具清理缓存日志,启动卸载管理
linux·运维·服务器·神经网络·cnn·pdf·1024程序员节
Evan东少5 天前
[踩坑]笔记本Ubuntu20.04+NvidiaRTX5060驱动+cuda+Pytorch+ROS/Python实现人脸追踪(环境准备)
1024程序员节
不爱编程的小陈6 天前
C/C++每日面试题
面试·职场和发展·1024程序员节
开开心心就好6 天前
右键菜单管理工具,添加程序自定义名称位置
linux·运维·服务器·ci/cd·docker·pdf·1024程序员节
码农三叔7 天前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk
西幻凌云11 天前
初始——正则表达式
c++·正则表达式·1024程序员节
启芯硬件11 天前
电源XL6009E1的dieshot细节分析-芯片设计干货
大数据·经验分享·硬件工程·1024程序员节
一颗青果13 天前
单例模式 | 死锁
linux·服务器·单例模式·1024程序员节