数据结构基础教程,第二天学习内容有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计601个文字,预计阅读时间需要3分钟。
1. 寻找数组中等于目标和的两个数+ 找出数组中两个数之和等于target的下标。暴力解法可行,但时间复杂度较高,为O(N^2)。+ 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]
1. 两数之和
找出数组中两个数之和等于target的两数下标。
暴力枚举可以
但时间较长,时间复杂度$O(N^2)$
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 []哈希表
官方题解的一个比较巧妙的方式:使用哈希表(字典) 用字典记录出现过的数字的位置。
本文共计601个文字,预计阅读时间需要3分钟。
1. 寻找数组中等于目标和的两个数+ 找出数组中两个数之和等于target的下标。暴力解法可行,但时间复杂度较高,为O(N^2)。+ 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]
1. 两数之和
找出数组中两个数之和等于target的两数下标。
暴力枚举可以
但时间较长,时间复杂度$O(N^2)$
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 []哈希表
官方题解的一个比较巧妙的方式:使用哈希表(字典) 用字典记录出现过的数字的位置。

