整数kとソートされた配列A(正の数と負の数の両方で構成できます)が与えられた場合、Aから2つの整数を出力a-b=k
します。O(n) time
O(1) space
O(n logn)解決策:
- 配列をトラバースします。
O(n)
- 要素
a[i]
の場合、a[i]+k
バイナリ検索を使用して配列を検索します。O(log n)
合計時間:O(n logn)
O(n)ソリューション:
- 配列のすべての要素をハッシュテーブルに格納します。
O(n)
- 要素a[i]について、ハッシュテーブルのa [i]+kかどうかを確認します。
O(1)
合計時間:O(n)
スペース:O(n)
しかし、彼は余分なスペースを備えたO(n)
ソリューションを望んでいO(1)
ます。誰か考えがありますか?