马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在列表中挑选相加等于target的两个数并输出其下标class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
n = len(nums)
for i in range(n):
for j in range(i + 1, n):
if nums[i] + nums[j] == target:
return [i, j]
return []
想知道其运行逻辑,是先将第一层循环执行完(但这样(i+1)好像没有意义·),还是执行一次第一层再执行第二层依次循环(但这样不是只能对两个相邻的数实现加法吗?)
注:作者:LeetCode-Solution
链接:https://leetcode.cn/problems/two ... -leetcode-solution/
本帖最后由 一点点儿 于 2022-8-11 22:21 编辑
执行一次第一层再执行第二层依次循环
对每一个数,计算它和它后面的数的和
例如:n=5
i=0, 计算nums[0] + nums[1]、nums[0] + nums[2]、nums[0] + nums[3]、nums[0] + nums[4]
i=1, 计算nums[1] + nums[2]、nums[1] + nums[3]、nums[1] + nums[4]
i=2,计算nums[2] + nums[3]、nums[2] + nums[4]
i=4, 计算nums[3] + nums[4]
|