したがって、質問を明確にするために:
セット A とセット B セット A のすべての要素にはセット B のパートナーがあり、同じセットのメンバーとの比較に基づいてどちらのセットも並べ替えることができません。つまり、B の各 b 要素はセット B の他の b と区別できません ( A)についても同様です。Ai が Bi と一致するとBi > Ai
、Bi < Ai
かかがわかりますBi = Ai
。実行時間が O(nlogn) のアルゴリズムを設計します。
二次時間での明白な答えは些細で役に立ちませんが、これは私が今まで思いついた中で最高のものです。log(n) を見ると、再帰または何らかのバイナリ ツリーを使用する必要があると思われますが、同じセットの要素を比較できずにバイナリ ツリーを作成する方法がわかりません。また、ネストされた for ループを実行するよりも効果的な再帰呼び出しを使用する方法もわかりません。どんなヒントでも大歓迎です。