标签: algorithm loops big-o
我有两个整数数组。我需要找出两个数字,每个数组一个,其总和等于2.这在O(n ^ 2)中非常简单,但有没有办法更快地完成它?
答案 0 :(得分:3)
你可以在O(N + M)时间和O(N)空间中这样做:
a
b
2-b[i]
构造N元素的哈希集需要O(N)时间和O(N)空间。根据哈希集检查每个M元素需要O(1),总共为O(N + M)时间。
N
M