两数之和 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]

相关推荐
ID_180079054731 分钟前
Python调用淘宝评论API:从入门到首次采集全流程
服务器·数据库·python
小猪咪piggy3 分钟前
【Python】(2) 执行顺序控制语句
开发语言·python
Σdoughty5 分钟前
python第三次作业
开发语言·前端·python
老鼠只爱大米5 分钟前
LeetCode经典算法面试题 #114:二叉树展开为链表(递归、迭代、Morris等多种实现方案详细解析)
算法·leetcode·二叉树·原地算法·morris遍历·二叉树展开
zhihuaba6 分钟前
构建一个基于命令行的待办事项应用
jvm·数据库·python
MediaTea7 分钟前
Python:内置类型也是类对象
开发语言·python
Ivanqhz11 分钟前
现代异构高性能计算(HPC)集群节点架构
开发语言·人工智能·后端·算法·架构·云计算·边缘计算
Faker66363aaa12 分钟前
云和云阴影检测与识别_YOLO11-seg-DySample改进实现
python
参.商.16 分钟前
【Day25】26.删除有序数组中的重复项 80.删除有序数组中的重复项II
leetcode·golang
Sayuanni%325 分钟前
数据结构_Map和Set
java·数据结构