同様の質問が何度も出される可能性があることは承知していますが、それらとは異なります。
値1 to N-1
を持つ並べ替えられていない整数配列に 1 つの重複要素があるとします (N
は配列のサイズであり、最大値はN-1
重複要素によるものです)。重複する要素を見つける最良の方法は何ですか? できればO(log n)
.`
私はO(n)
解決策を知っていますが、この問題をO(log n)
時間内に解決する方法はありますか?
O(n) ソリューション:
1) Find sum of first N-1 natural numbers using N(N-1)/2, lets say it SUM1
2) Find sum of all the elements of the arrays, let say it SUM2
Duplicate = SUM2 - SUM1