3
配列をインターリーブするためのインプレースアルゴリズム
要素の配列が与えられます2n2n2n a1,a2,…,an,b1,b2,…bna1,a2,…,an,b1,b2,…bna_1, a_2, \dots, a_n, b_1, b_2, \dots b_n タスクは、結果の配列が次のようになるようにインプレースアルゴリズムを使用して配列をインターリーブすることです b1,a1,b2,a2,…,bn,anb1,a1,b2,a2,…,bn,anb_1, a_1, b_2, a_2, \dots , b_n, a_n インプレース要件がなければ、新しい配列を簡単に作成し、要素をコピーして時間アルゴリズムを提供できます。O(n)O(n)\mathcal{O}(n) インプレース要件では、分割統治アルゴリズムはアルゴリズムを上げ。θ(nlogn)θ(nlogn)\theta(n \log n) 質問は次のとおりです。 あるその場でもあり、時間アルゴリズムは、?O(n)O(n)\mathcal{O}(n) (注:均一コストのWORD RAMモデルを想定できるため、インプレースはスペース制限に変換されます)。O(1)O(1)\mathcal{O}(1)