比較可能なアイテムの2つのリストuおよびsを想定します。INV(u)をuの反転数とします。
INV(u)の最小の増加でsの項目をuに挿入する効率的なアルゴリズムを探しています。
基本的に、リストにオブジェクトを挿入し、最初のリストの順序を維持しながら、「可能な限りソートされた」状態に保ちたいと思います。
例:
u = [4,6,2,9,7]
INV(u) = 3 ((4, 2), (6, 2) and (9, 7)
s = [8,3,10]
one optimal solution u' = [3, 4, 6, 2, 8, 9, 7, 10]
INV(u') = 5 ((4, 2), (7, 2) and (9, 7) + (3,2), (8,7))
different optimal solution u' = [3, 4, 6, 2, 9, 7, 8, 10]
INV(u') = 5 ((4, 2), (7, 2) and (9, 7) + (3,2), (9,8))
ご覧のとおり、独自の最適なソリューションはありません。
どんな種類のアイデアや方向性を検討するのがうれしいです。