Forword-Star でグラフ表現を行っているので、格納するためにはこれだけのメモリが必要になる。
sizeof(int) x (#nodes + 2 + #arcs x 2)
点 ID は 1 ~ #nodes という前提で処理しているために、全体の ID がシフトしたようなグラフや、使用していない ID が多数あるグラフを渡されるととてもメモリを食ってしまう。
グラフデータの ID を置き換えるという作業をすることによって、改善はできるだろうが、変更先を保持しておくようなテーブルが必要になるだろうし、保守がしにくくなるだろう。どこまでという線引きは難しいものだ。
sizeof(int) x (#nodes + 2 + #arcs x 2)
点 ID は 1 ~ #nodes という前提で処理しているために、全体の ID がシフトしたようなグラフや、使用していない ID が多数あるグラフを渡されるととてもメモリを食ってしまう。
グラフデータの ID を置き換えるという作業をすることによって、改善はできるだろうが、変更先を保持しておくようなテーブルが必要になるだろうし、保守がしにくくなるだろう。どこまでという線引きは難しいものだ。
※コメント投稿者のブログIDはブログ作成者のみに通知されます