我试图计算函数"twoSum"的时间复杂度,并写下每行的成本和执行的次数.最后,我做了两个向量:一个用于成本,另一个用于频率,然后计算它们的内积.我得到以下内容:(n + n + nlogn + n + n + nlogn + n + n + n + n) = 9n + 2logn >> 9n支配所以时间复杂度O(n).如果我错了请纠正我!
class Solution(object):
def binarySearch(self,arr, l, r, x):
if r >= l:
mid = l + (r - l)/2
if arr[mid] == x: return mid
elif arr[mid] > x:return self.binarySearch(arr, l, mid-1, x)
else: return self.binarySearch(arr, mid + 1, r, x)
else:return -1
def twoSum(self, nums, target):
temp = [i for i …Run Code Online (Sandbox Code Playgroud)