Presentation is loading. Please wait.

Presentation is loading. Please wait.

データ構造とアルゴリズム (第3回) ー木構造ー.

Similar presentations


Presentation on theme: "データ構造とアルゴリズム (第3回) ー木構造ー."— Presentation transcript:

1 データ構造とアルゴリズム (第3回) ー木構造ー

2 木構造 木構造:1個以上の節の有限集合Tであり、次の二つの条件を満足するもの R R … Tm T1 … Tm T1
(1) 根(root)と呼ばれる節Rが、1つだけ含まれる。 (2) 根以外の節は、m(≧0)個の互いに素な部分集合T1, …,Tm に分割され、各Ti(1≦i≦m)は再び木になっている。 R R Tm T1 Tm T1

3 木構造 R 部分木 T1 Tm R1 Rm T1,n T1,1 Tm,k Tm,1

4 木構造によって表現できる関係の例 包含関係 n項関係 部分‐全体関係 その他 A D A B E C B C D E * a*(b+c) a
コンピュータ 本体 ディスプレー キーボード マザーボード CPU メモリ 入出力ボード1

5 木の表現 括弧 (A(B(E)(F))(C)(D(G(I)(J))(H))) 図式表現 度数=3 度数=2 高さ=4

6 同レベルの部分木の順序: 順序木、有向木 順序木:兄弟間に順序が存在する。
     例: D>C>B,H>G,E>F,I>J

7 森:木の順序集合

8 二分木(binary tree) R 左部分木 右部分木 R1 T1,2 T1,1 T1 T2 R2 T2,2 T2,1
*空集合:φも二分木

9 問題4.6 φ これらは、二分木 有向木と見なせば、 同じ。順序木と見な せば異なる。 これらは、二進木と見なせば、 同じである。

10 完全二分木 22-1= 21-1= 23-1= 24-1= 23-1=4 24-1=8  

11 完全二分木:節に対する番号付け m m/2 m 2m 2m+1 親の番号 子の番号

12 二分木の表現 順配置(完全二分木): X[9] X[8] X[7] X[6] X[5] X[4] X[3] X[2] X[1] リンク配置:

13 二分木の走査 縦型探索 先順(前順,preorder) 中順(inorder) 後順(postorder)
走査:探索によって、節のデータを処理する(訪問する)こと。

14 二分木の走査

15 逆ポーランド記法 先順:*a+bc  前置記法 中順:a*b+c  中置記法 後順:abc+*  後置記法   (逆ポーランド記法)

16 ポーランド記法の計算は スタックを用いれば簡単
a b c b c a (b c) c b a

17 N分木・森の二分木への変換

18 木のリンク配置による表現

19 ゲーム木

20 演習問題 2-(3-1-1)-1 という数式の構文木を求め,逆ポーランド記法を求め,スタックを用いて計算して結果が0になることを確認してください.


Download ppt "データ構造とアルゴリズム (第3回) ー木構造ー."

Similar presentations


Ads by Google