当前位置: 首页 > news >正文

Java算法-力扣leetcode-167. 两数之和 II - 输入有序数组

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 ****非递减顺序排列 ** ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length 。

以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 **和 **index2

你可以假设每个输入 只对应唯一的答案 ,而且你 不可以 重复使用相同的元素。

你所设计的解决方案必须只使用常量级的额外空间。

示例 1:

输入: numbers = [2,7,11,15], target = 9
输出: [1,2]
解释: 2 与 7 之和等于目标数 9 。因此 index1 = 1, index2 = 2 。返回 [1, 2] 。

示例 2:

输入: numbers = [2,3,4], target = 6
输出: [1,3]
解释: 2 与 4 之和等于目标数 6 。因此 index1 = 1, index2 = 3 。返回 [1, 3] 。

示例 3:

输入: numbers = [-1,0], target = -1
输出: [1,2]
解释: -1 与 0 之和等于目标数 -1 。因此 index1 = 1, index2 = 2 。返回 [1, 2] 。

提示:

  • 2 <= numbers.length <= 3 * 104
  • -1000 <= numbers[i] <= 1000
  • numbers 按 非递减顺序 排列
  • -1000 <= target <= 1000
  • 仅存在一个有效答案
    public int[] twoSum(int[] numbers, int target) {int i = 0;int j = numbers.length-1;while (numbers[i] + numbers[j] != target) {if (numbers[i] + numbers[j] > target) {j--;}if (numbers[i] + numbers[j] < target) {i++;}}int[] result = new int[2];result[0] = i+1;result[1] = j+1;return result;}
}

相关文章:

  • 元音 (音标) 和元音字母的区别
  • Linux Shell Script 编写入门
  • 【vuejs】vm.$set() 的原理解析和方法以及应用场景
  • 实战 | YOLOv10 自定义数据集训练实现车牌检测 (数据集+训练+预测 保姆级教程)
  • DevOps 安全集成:从开发到部署,全生命周期安全守护
  • [ssi-uploader插件]解决如何接收服务器返回数据+修改参数名称
  • 数据库练习题
  • oracle中如何查询特定日期?
  • 计算机网络——应用层
  • 【稳定检索/投稿优惠】2024年材料科学与能源工程国际会议(MSEE 2024)
  • json.dumps参数
  • 可视化数据科学平台在信贷领域应用系列四:决策树策略挖掘
  • 如何使用 Magisk 获取 Google Pixel 4 或 Pixel 4 XL 的 Root 权限
  • iptables实现端口映射转发
  • APP开发技术的变迁史
  • [case10]使用RSQL实现端到端的动态查询
  • [nginx文档翻译系列] 控制nginx
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • Akka系列(七):Actor持久化之Akka persistence
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • Elasticsearch 参考指南(升级前重新索引)
  • java 多线程基础, 我觉得还是有必要看看的
  • java8 Stream Pipelines 浅析
  • 闭包--闭包作用之保存(一)
  • 分布式熔断降级平台aegis
  • 服务器之间,相同帐号,实现免密钥登录
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 基于遗传算法的优化问题求解
  • 目录与文件属性:编写ls
  • 普通函数和构造函数的区别
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 我有几个粽子,和一个故事
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 终端用户监控:真实用户监控还是模拟监控?
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • # Redis 入门到精通(一)数据类型(4)
  • # 消息中间件 RocketMQ 高级功能和源码分析(七)
  • ## 1.3.Git命令
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • ${factoryList }后面有空格不影响
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (4)Elastix图像配准:3D图像
  • (arch)linux 转换文件编码格式
  • (C#)获取字符编码的类
  • (MTK)java文件添加简单接口并配置相应的SELinux avc 权限笔记2
  • (SpringBoot)第二章:Spring创建和使用
  • (二)原生js案例之数码时钟计时
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (十一)手动添加用户和文件的特殊权限
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • ... 是什么 ?... 有什么用处?