本論文では、未知の全順序を持つアイテムのセットをソートする問題を扱う。事前に一部の比較結果が与えられており、これを利用してアイテムを効率的にソートする手法を提案する。
まず、入力をDAGとして表現する。DAGの頂点がアイテムに対応し、辺は既知の比較結果を表す。ソーティングの目的は、この DAGに対応する全順序を見つけることである。
提案するアルゴリズムは、トポロジカルソートとヒープソートを組み合わせた「トポロジカルヒープソート」である。ソース頂点のみを保持するヒープを用いることで、O(m + n + log T)時間でO(n + log T)回の比較を行うことができる。ここで、n, m, Tはそれぞれ頂点数、辺数、DAGに整合する全順序の数を表す。
さらに、長い最長パスを持つDAGに対しても効率的に動作する「トポロジカルヒープソートWithインサーション」を提案する。これは、最長パスの頂点を特別に扱うことで、O(m + n + log T)時間でO(log T)回の比較を行うことができる。
提案手法は、既存の最も効率的なアルゴリズムと比べて、より単純な構造を持ちながら、同等以上の性能を発揮する。また、ヒープの動作特性を利用することで、入力依存の効率性を実現している点が特徴的である。
翻譯成其他語言
從原文內容
arxiv.org
深入探究