2009-02-25

http://anond.hatelabo.jp/20090225024305

何が問題なってるか、いまいち分からんが、現在マシン使って良いなら

数万レベルの点なんてデータ構造とか考える必要のある規模じゃない

数千万レベル管理するならしっかり考えないとまずそうだが64bitの数値10個持っても80バイトなんだから

百万個でも80メガバイト程度

この程度なら全部メモリに収まるからいちいち頭からシークしたって知れてる

まぁ、ごく普通にやるなら

点のコレクションクラス作って、存在する点のIDハッシュでコレクションクラスに持たせた上で

リスト構造あたりで点のデータを保持しとけば良いんじゃないかね?

必要なら、点コレクションクラスを空間クラスにおいても良いが

記事への反応 -
  • 空間に点が多数生成されたり消えたりする状況をコーディングしたいとき、点群を管理するデータ構造って普通どういう風にやりますか? 空間クラスが点クラスのオブジェクト(へのポ...

    • パフォーマンスを気にしないならどうコーディングしてもいいような気もします。 パフォーマンスが問題となる場合は、点の最大の数がどのくらいになるかによってコードが変わる。 天...

      • 点の数を最初にfixするということですか。確かにその方が速そうですね。 点の数は(GAなので)膨大になることは無いです。たぶんせいぜい1000程度。 点へのアクセスは基本的には全部舐め...

        • 何が問題なってるか、いまいち分からんが、現在のマシン使って良いなら 数万レベルの点なんてデータ構造とか考える必要のある規模じゃない 数千万レベルで管理するならしっかり考え...

          • オーバーヘッドとかの問題と言うよりは、単純にああいうケースの定石的な方法を知りたかったんです。 なので、 まぁ、ごく普通にやるなら 点のコレクションクラス作って、存在す...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん