2017-04-08 6 views
0

IサイズN未ソートアレイを有し、IはK-1除数を見つける必要があるので、すべてのサブセットが同じサイズである(のようなアレイがソートされた後) 。アレイサイズN kの同じサイズのグループには

私はk-1 = 3でこの問題を見てきました。私はメジアンの中央値が必要だと思います。これはo(n)です。しかし、私たちはそれを行うべきだと思う。ko(nk)
o(n logk)の理由を理解したいと思います。

例:私は配列が未定義であり、その値に従ってk(同じサイズの)サブアレイに分割するk-1の整数であるkの除数を見つけたいと思います。
私が[1, 13, 6, 7, 81, 9, 10, 11]を持っているならば、3 = kデバイダは[1 6, 9 10 13 81]に分割する[7 ,11]であり、各サブセットは2で等しくなります。

+1

あなたはテストケースの例を挙げることができますか? –

+0

@A.Shoobよろしくお願いします。さて、同じことを言うあなたのコメントを削除してください。これは総コメントの数を減らすのに役立ちます。 (私も私のものを削除しています) – mickmackusa

答えて

0

分割と征服のアプローチを使用できます。まず、中央値メジアンアルゴリズムを使用して(k-1)/2分周器を見つけます。次に、選択した要素を使用して、リストを2つのサブリストに分割します。残りの分周器を見つけるために各サブリストでアルゴリズムを繰り返します。

最大再帰深度はO(log k)であり、各レベルのすべてのサブリストの合計コストはO(n)であるため、アルゴリズムはO(n log k)です。

+0

ありがとうございました。 –

関連する問題