力扣第一题代码可运行
时间: 2024-09-20 21:18:13 浏览: 41
js代码-力扣第七题
力扣(LeetCode)的"两数之和"(Two Sum)问题通常可以用多种编程语言来解决,这里给出一个使用 Python 语言的简单解决方案:
```python
def twoSum(nums, target):
# 创建一个字典来存储每个元素及其索引
num_dict = {num: i for i, num in enumerate(nums)}
# 遍历数组,对于每个元素,查找是否存在另一个元素使得它们的和为目标值
for i, num in enumerate(nums):
complement = target - num
if complement in num_dict and num_dict[complement] != i:
return [i, num_dict[complement]]
# 测试示例
nums = [2, 7, 11, 15]
target = 9
print(twoSum(nums, target)) # 输出: [0, 1]
```
这个代码的主要思想是使用哈希表(字典)来快速查找满足条件的元素。通过遍历一次数组,我们可以找到所有需要的组合。时间复杂度是 O(n),n 是数组长度,空间复杂度也是 O(n)。
阅读全文