我是计算时间复杂度的新手。我四处搜索,我了解它的基本知识。我有以下算法,我正在尝试计算练习的复杂性。我说得对吗,它会是 O(n(?
另外,对实践这个概念的地方有什么建议吗?
class Solution:
def twoSum(self, nums, target):
h = {}
for i, num in enumerate(nums):
n = target - num
if n not in h:
h[num] = i
else:
return [h[n],i]
Answer = Solution()
print (Answer.twoSum([2,3,4], 7))
是的,你是对的,这个算法的复杂性将是线性的(O(n((。考虑到有 n个数字,函数中的循环运行 n 次。