問題タブ [hashtable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lua - Luaのハッシュテーブルのキーの数を取得するにはどうすればよいですか?
キーの数を取得するために、実際にテーブル内の項目を反復処理する必要がありますか?
language-agnostic - ハッシュ テーブルまたはディクショナリのキー名を格納する場所
ハッシュ テーブル/辞書を使用しているとき、キーの指定方法に苦労することがあります。
例: 簡単な辞書を作成すると (この例では Python を使用)、
キー値 ( foo['bar']
) を使用して (他のモジュールの) 値にアクセスし、baz
戻ることができます。
Dr. Evil の言葉を借りれば、「かなり標準的です」。
残念ながら、キーに静的文字列を使用すると、この Dictionary を使用するすべてのモジュールがその実装に密接に結合されます。もちろん、これは他のキー タイプ (Enum、Object など) を使用する場合にも適用できます。いずれにせよ、ディクショナリにアクセスするすべてのモジュールは、キーの値を知る必要があります。
これを解決するために、私は通常、キーに静的な定数文字列値 (言語で使用可能な場合は列挙型) を使用し、それらをローカル クラス/モジュールにパブリックに格納するか、別のモジュール/クラスに格納します。したがって、ディクショナリ キー自体への変更は 1 つの場所に保持されます。
これは通常、次のようになります。
ディクショナリの使用が必ずしもモジュール/クラスをその実装に結合しないように、キーを指定するより良い方法はありますか?
注: SO でこれに対処するいくつかの応答を見てきました (例: property-to-reference-a-key-value-pair-in-a-dictionary ) が、トピックはこの問題に具体的に対処していないようです。回答は参考になりましたが、もっと幅広い経験が欲しいです。
c# - C#ハッシュテーブルに特定のキーと値のペアが含まれているかどうかをテストするには?
テーブルを走査している間、おそらく一意であると思われるアイテム ID をキーとして、ファイルの場所を値としてハッシュ テーブルに格納しています。実行中に、キーと場所のペアが一意であることを確認するか、エラー メッセージをスローする必要があります。ハッシュテーブルを設定して値を読み込んでいますが、何をテストすればよいかわかりません:
c - これらの 2 つの状況に最適な C のデータ構造は?
学校のプロジェクトの締め切りの数時間前にそれを達成できるかどうかを確認するために、これを決定する必要がありますが、データ構造についてあまり理解していないため、提案が必要です...
私がしなければならないことが 2 つあります。それらはおそらく異なるデータ構造を使用するでしょう。
プロファイル レコードを保持するためのデータ構造が必要です。プロファイルは、名前と社会保障番号で検索できる必要があります。SSN は独自のものなので、それを有利に利用できるでしょうか? ここではハッシュマップが最善の策だと思いますか? しかし、ハッシュ マップで SSN を使用して、特定のプロファイルを探す際の利点として使用するにはどうすればよいでしょうか? 基本的で分かりやすい説明は大歓迎です。
都市に関するレコードを保持するためのデータ構造が必要です。訪問者が最も多い都市、訪問者が少ない都市、および特定の都市を訪問するクライアント (クライアントに関するデータのプロファイルは #1 のデータ構造から取得されます)を知る必要があります。
これは私のプロジェクトに必要な 3 番目のデータ構造であり、どこから始めればよいか分からないデータ構造です。使用するデータ構造のタイプに関する提案は、可能であれば、上記のデータを太字で古いものにする方法の例とともに高く評価されます。
注:最初のデータ構造は既に完了しています (以前の質問
で話しました)。2 つ目はここ #1 に投稿されています。他のグループ メンバーが対応していますが、私たちがやろうとしていることが「最善の」アプローチであるかどうかを知る必要があります。3 番目は #2 で、私が最も助けを必要としているものです。
c# - HashTable をソートすることは可能ですか?
を返すプロパティがありますHashTable
。プロパティをリファクタリングせずにソートしたいと思います。ご注意ください: 私は別のタイプを返品したくありません. コード:
c# - 単体テスト用のランダムな値を生成する Has テーブルのデータ型
私のプロジェクトは、最小値と最大値を取得することにより、各データ型に対していくつかの値 (等分割法) を生成します。機能テスト用の値を生成しています。実際にこの値を nunit パートナーに渡しています。max amd min は int、float、double などに適用できます。これらの値は test data です。
最初に、int、float、double、string などの基本的なデータ型を生成しました。
ここで、DataSet、HashTable、その他のコレクションなどのデータ型をサポートする必要があります。
この関数をテストするために、int と string の値を渡すことができますが、ht のテスト データを渡す方法や、ハッシュ テーブルのテスト データを生成する方法を教えてください。
c# - Add メソッドを使用せずに Hashtable に新しい値を割り当てる
私がいつも使用してきた dotnet Hashtable に新しい値を追加するには、次のようにします。
しかし、代わりに次のことを行うコードに出くわしました:
2つの方法に違いはありますか?
hash - 整数座標ペアから一意の uint を提供するハッシュ関数
一般的な問題: ドットがまばらに配置された大きな 2 次元ポイント空間があります。黒い点がちりばめられた大きな白いキャンバスと考えてください。これらのドットを何度も繰り返して検索する必要があります。キャンバス (ポイント スペース) は、int の制限に接する巨大なサイズになる可能性があり、そこにポイントを設定する前にそのサイズは不明です。
それはハッシュのアイデアに私をもたらしました:
理想: 2D ポイントを取り、一意の uint32 を返すハッシュ関数が必要です。衝突が起こらないように。Canvas 上のドットの数は、uint32 で簡単に数えられると想定できます。
重要:キャンバスのサイズを事前に知ることは不可能です (変更される場合もあります)。
キャンバス幅 * y + x
悲しいことに問題外です。
私も非常に素朴なことを試しました
abs(x) + abs(y)
しかし、それでは衝突が多すぎます。
妥協:衝突の可能性が非常に低い キーを提供するハッシュ関数。
アイデアはありますか?助けてくれてありがとう。
よろしく、 アンドレアス T.
編集:質問テキストで何かを変更する必要がありました:「uint32でキャンバスのポイント数をカウントできる」という仮定を「キャンバス上のドットをカウントできる(または保存する座標ペアの数)」に変更しましたsqrt(max(uint32))xsqrt(max(uint32)) サイズのキャンバスがあり、16 ビット シフトと OR で一意に表現できるため、元の質問はあまり意味がありませんでした。
すべての答えは、更新された仮定で最も理にかなっているので、これで問題ないことを願っています
そのために残念。
c# - c#でプロパティクラスを作成するには?
key
&などの 2 つのプロパティを持つクラスを作成したいと考えていますvalue
。
そして、 にvalue
基づいてを提供するメソッドが 1 つ必要ですkey
。
それで、コードは何ですか?私は知ってHashtable
いますが、C#で実装する方法は? string
を鍵にできますか?
bash - シェル スクリプトの連想配列
連想配列をシミュレートするスクリプト、またはシェル スクリプト用のデータ構造のようなマップが必要でした。