基本的なデータ構造 - バイナリツリー

二進木

  • ツリーの深さはO(ログn)は、
  • 左の子供、右の子を持っています
  • 完全なバイナリツリー、各ブランチがいっぱいです
  • バイナリツリーを完了し、バイナリツリーの有効期限に従うことによって、ノードの一部を削除し、ノードの前の最後のノードが完全であることを確認してください
  • アレイまたはリンクされたリストを使用して表すことができます。

バイナリアレイの使用する場合の測位方法を

N現在のノード
左の子2 N + 1
右の子2
N + 2

逆に、現在のノードがその親ノードの左の子であり、親ノード(N-1)/ 2;右の子、親ノード(N-2)/ 2

アプリケーションバイナリツリー

バイナリ検索ツリー(バイナリソートツリー)、ルートノードが左の子よりも大きい場合、以下の右側の子
1.検索
順次ルート比較、同様のバイナリ検索ので、Oの複雑さ(ログn)から出発します

2.相対的な順序を維持する
挿入されたデータのサイズに応じて

トラバースバイナリツリー

1.深さ優先

  • 前文
  • 順番に
  • シーケンスの後
    の使用のための反復やもの「バックトラック」の属性があり、スタックのコードを書くために

2.幅優先

  • トラバーサルシーケンス
    の使用のためのキューの書き込み

おすすめ

転載: www.cnblogs.com/j-c-y/p/11544008.html