多くの同様の質問を読んだ後:
- セットデータ構造の JavaScript 実装
- JavaScript でセットを模倣していますか?
- ノード JS、従来のデータ構造? (Set など)、ノードの Java.util のようなものはありますか?
- 効率的な Javascript 配列ルックアップ
- 項目が JavaScript 配列にあるかどうかを確認する最良の方法は?
- 配列に JavaScript のオブジェクトが含まれているかどうかを確認するにはどうすればよいですか?
まだ質問があります。文字列の大きな配列 (数千) があり、多くの検索を行う必要があるとします (つまり、特定の文字列がこの配列に含まれているかどうかを何度も確認します)。Node.js でこれを行う最も効率的な方法は何ですか?
A. 文字列の配列を並べ替えてから、バイナリ検索を使用しますか? また:
B. 文字列をオブジェクトのキーに変換し、「in」演算子を使用する
?
A の複雑さは O(log N) であることがわかっています。ここで、N は文字列の数です。
しかし、B の複雑さはわかりません。
Javascript オブジェクトがハッシュ テーブルとして実装されている場合、B の複雑さは平均で O(1) であり、A よりも優れています。ただし、Javascript オブジェクトが本当にハッシュ テーブルとして実装されているかどうかはわかりません。 !