タグ付けされた質問 「data-structures」

ソフトウェアアプリケーション内でのデータの効率的な保存と表現に関する質問。

2
(車両)トラフィックネットワーク内で最短経路を見つけるためのより良いアプローチはありますか?
プログラマの皆さん、 車両の通行をシミュレートするソフトウェアを開発しています。「割り当て」と呼ばれるプロセスの一部は、ルートへの車両の割り当てに関係しており、ある種の最短経路探索アルゴリズムを使用する必要があります。 伝統的に、人々はダイクストラでこれを行っており、特定の科学文献は、おそらくグラフの性質のために、A *や他の代替案は大幅な改善をもたらさないことを示しているようです。 したがって、ダイクストラも使用しています。小さな問題が発生しました。交通リンク(交差点間の道路のスパン)をエッジとして扱い、交差点をノードとして扱う場合、古典的な単方向グラフを取得できません。交差点に近づくと、頻繁に方向転換できるかどうかは従来のグラフでは、ノードから任意のエッジを取得できますが、 この問題は、リンクと交差のペア(「ラス」と呼ばれます)をノードとして表すことで簡単に解決できました。後続の「ラス」または選択したポイントに到達するにはリンクをたどる必要があるため、エッジがこのトラバーサルとして定義され、典型的なグラフが得られます。 次に、結果は単純なテーブルN x Nに格納されます。ここで、Nは「ラス」の数です。 これは(避けられない?)欠点です。シミュレーションの一般的なネットワークに2000の交差点がある場合、約6000リンク、つまりN = 3Vになります。明らかに、交差(V)で数えると、O(log(3V)*(3V + E))になります。 3(または9)は一定の要素であると主張するかもしれませんが、実際の観点からは、処理速度がかなり遅くなり、ストレージスペースが3V x 3Vに増加します。 これを再構成してパフォーマンスを向上させる方法を誰かが知っていますか?必ずしも別のアルゴリズムである必要はありません。おそらく、他の方法でグラフに合うようにデータ構造を再形成しますか?

4
構造とクラスの起源
プログラマーが最初に構造とクラスを使用することを決定したときに、プログラマーが解決しなければならない設計と実装の問題は何ですか? これはいつ起こり、これらのアイデアの先駆者は誰でしたか? 構造とクラスは関連しているため、これは二重の質問です。構造はクラスよりもかなり古いことに気づきました。答えがそれらの両方について別々に話し、いくつかの出典を引用することは素晴らしいことです。

2
ネストされたコレクションをよりエレガントに処理する方法はありますか?
私の質問はむしろデザインの質問です。私のプログラムでは、次のようなデータ構造に到達しました。 private ConcurrentHashMap<A, ConcurrentHashMap<B, ConcurrentHashMap<Integer, C>>> services = new ConcurrentHashMap<A, ConcurrentHashMap<B, ConcurrentHashMap<Integer, C>>>(); そのようなデータ構造をよりエレガントに処理する方法はありますか?ありがとう! edit:A、B、Cはビジネスクラスです。Aインスタンスは(関連付けとして)多くのBを「持つ」ことができ、Bは多数のマッピングを「持つ」ことができますInteger-C。

2
一般的なスケジューラデータをC#に保存するための理想的なデータ構造/手法
HTMLでテーブルを出力する汎用スケジューラオブジェクトをC#4で実装しようとしています。基本的な目的は、いくつかのオブジェクトをさまざまな属性と一緒に表示し、特定の期間に何かを実行していたかどうかを示すことです。 スケジューラーはヘッダーを表示するテーブルを出力します: Detail Field 1 ....N| Date1.........N 日付範囲を作成するために、開始日と終了日でテーブルを初期化したいと思います(理想的には、時間などの他の期間も実行できますが、それは重要ではありません)。次に、関連するイベントを持つ汎用オブジェクトを提供します。 テーブルセルにマークを付けたい期間内にオブジェクトにイベントがある場合 例えば Name Height Weight 1/1/2011 2/1/2011 3/1/20011...... 31/1/2011 Ben 5.11 75 X X X Bill 5.7 83 X X だから私は開始日= 1/1/2011と終了日31/1/2011でスケジューラを作成しました 人物オブジェクト(既にソートされている)を指定して、表示するフィールド(名前、高さ、体重)を伝えたい 各人には、開始日と終了日があるイベントがあります。一部のイベントは開始して終了しますが、関連する日付などに表示されるはずです。 理想的には、クラス予約オブジェクトなども提供できるようにしたいと考えています。だから私はそれを一般的に保つようにしています。 私は同様のJavasript実装などを見てきました。 これに適したデータ構造は何でしょうか?それを一般的にするために使用できるテクニックについての考え。私はジェネリックスに不慣れなので、どんなヒントも歓迎されます。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.