コレクションからJavaツリーを使用していますが、ツリーの実際の使用法は何ですか。CS 言語と同様に、B ツリーは最大 2 つの childs 、 leaf 、ツリーの高さ、およびその他を持つことができます。しかし、Javaではこれらの解釈をどのように観察できるか、そしてJavaでのツリーの実装は何ですか。
私は TreeMap と TreeSet についてのみ話しています
TreeSet
およびTreeMap
クラスについて話している場合、それらはTree 構造の内部表現を使用してSet
およびインターフェイスをそれぞれ実装しています。Map
そのため、ユーザーは内部のツリーにアクセスできません (子に直接アクセスすることはできません)。
注:Javaには標準Tree
インターフェースはありません
ありませんTree
- どちらかまたはの意味ではないTreeSet
ですTreeMap
か?
いずれにせよ、これらは両方とも、基盤となる実装としてRed-Black Treesを使用します。
HashSet
Red-Black ツリーのパフォーマンス特性 (ほとんどの一般的な操作で O(log(n)) 時間) を持つことを除けば、それらはand とほとんど同じように動作しHashMap
ます - ほとんどの場合、それらは同じ意味で使用できます。