两数之和 II(LeetCode)

题目

给你一个下标从 1 开始的整数数组 ,该数组已按非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 的两个数。

如果设这两个数分别是 ,则

以长度为 的整数数组 形式返回这两个整数的下标 和**。

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

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

解题

python 复制代码
def two_sum(numbers, target):
    left = 0
    right = len(numbers) - 1

    while left < right:
        current_sum = numbers[left] + numbers[right]
        if current_sum == target:
            return [left + 1, right + 1]  # 下标从1开始
        elif current_sum < target:
            left += 1
        else:
            right -= 1


# 测试例子
numbers = [2, 7, 11, 15]
target = 9
result = two_sum(numbers, target)
print("满足条件的下标:", result)

满足条件的下标: [1, 2]

相关推荐
AI街潜水的八角8 分钟前
Python电脑屏幕&摄像头录制软件(提供源代码)
开发语言·python
hadage23310 分钟前
--- git 的一些使用 ---
开发语言·git·python
sheeta19981 小时前
LeetCode 每日一题笔记 日期:2025.11.24 题目:1018. 可被5整除的二进制前缀
笔记·算法·leetcode
笨笨聊运维6 小时前
CentOS官方不维护版本,配置python升级方法,无损版
linux·python·centos
Gerardisite6 小时前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
小毛驴8507 小时前
软件设计模式-装饰器模式
python·设计模式·装饰器模式
gfdhy7 小时前
【c++】哈希算法深度解析:实现、核心作用与工业级应用
c语言·开发语言·c++·算法·密码学·哈希算法·哈希
闲人编程7 小时前
Python的导入系统:模块查找、加载和缓存机制
java·python·缓存·加载器·codecapsule·查找器