我不确定我做错了什么,但是当我执行下面的代码时:
func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
let length = nums.count-1;
for index1 in 0...length {
let difference = target - nums[index1];
print(target, difference, nums[index1])
if (nums[index1] < difference) {
for index2 in index1+1...length {
if (nums[index2] == difference) {
return [index1, index2];
}
}
}
}
return [];
}
let summer = twoSum([-1,-2,-3,-4,-5], -8)
我收到以下错误:
Swift/ClosedRange.swift:347:致命错误:范围需要 lowerBound <= upperBound
有趣的是,如果我将 if 语句的条件更改为
nums[index1] <= target
,它就不会崩溃。