他のノードのエントリに接続するエントリのリストであるノードを持つ有向非巡回グラフがあります。このような種類:
entry ]
entry--| ] node 1
entry | ]
----- |
entry<-| ] node 2
entry | ]
----- |
entry | ] node 3
entry--| ]
ノード内のエントリの順序は固定されています。エントリは、リンク先のエントリへの絶対インデックスを持つ配列に格納されます。エントリごとに最大 1 つのリンクがあり、すべてのノードには少なくとも 1 つのリンクがあります。(つまり、これは高度に接続されたグラフです)。グラフには、40,000 のノードにグループ化された約 100,000 のエントリが含まれています。
私がしなければならないことは、リンクに相対インデックスを使用して基礎となるデータ構造を圧縮できるように、ノードを並べ替えてエントリ間の最大距離を最小限に抑えることです。
圧縮とパフォーマンスが目標であるため、外部データ (ジャンプ テーブル、リスト内の特別なジャンプ要素) を追加するソリューションは受け入れられません。エントリ間の最大距離を最小化するノードの並べ替えアルゴリズムが本当に必要です。何かご意見は?