データ構造に名前と姓を格納する効率的な方法があり、姓または名のいずれかを使用して検索できますか?私は名字のバイナリ検索ツリーを考えます。名前を検索すると効率的です。しかし、姓を検索しようとすると効率的ではありません。姓のあるBSTをもう1つ検討することもできます。それを効率的に実装するためのアイデアは何ですか?問題はどのような場合名前と姓を格納するアルゴリズムとデータ構造
文字列名[] = { "B"、 "C D"}。
実行時に動的にこのディレクトリを拡張する必要がある場合は、永続ストレージなしで を指定する必要があります。ディレクトリは最終的に数百または の数の名前に成長し、姓または名で検索可能でなければなりません。
これで、保存するハッシュテーブルを作成することはできません。何か案は?
問題はやや漠然とそうです(多分、非同期呼び出しに)現在のノードの後にすべての葉を横断することにより、部分的名称の提案を得ることができるこの方法は、あなたは、単一の文字列を与えたいです一致する最後または最初の名前を検索します。最後に姓と姓で検索しますか?または名前/姓の組み合わせを検索しますか?最初の2つのケースでは、別々のBSTを使用していますが、最後のケースではBSTにネストされたBSTと一緒に行くことができます – pasha
アドレスブックのシナリオとして想像することができます。私たちはemp.setName( "A"、 "J")、emp.setName( "B"、 "C")のような名前のリストを与えられています...私はempの詳細を取得する必要があります。または姓 – klaks
これは上記のシナリオでも機能しますか? – klaks