discrete mathematics - treesweb.itu.edu.tr/~gencata/courses/dm/trees.pdfdiscrete mathematics trees...
TRANSCRIPT
![Page 1: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/1.jpg)
Discrete MathematicsTrees
H. Turgut Uyar Aysegul Gencata Emre Harmancı
2007
![Page 2: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/2.jpg)
Content
TreesIntroductionSpanning Tree
Rooted TreesIntroductionOperation Treem-ary Trees
![Page 3: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/3.jpg)
Tree
Definitiontree:Graph G is called a tree if G is connected and contains no cycles.
I Graph whose connected components are trees: forest
![Page 4: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/4.jpg)
Tree Theorems
TheoremThere is exactly one path between a node pair in a tree.
I There is a path because the tree is connected.
I If there were more than one path:
![Page 5: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/5.jpg)
Tree Theorems
TheoremThe following statements are equivalent for a loop-free undirectedgraph G (V ,E ) and |V | ≥ 2:
1. G is a tree (is connected and has no cycles.)
2. there is exactly one path between each node pair.
3. G is connected, but if an edge is removed it becomesdisconnected.
4. G does not have a cycle, but if an edge is added between anytwo nodes a cycle is formed.
I proof method: 1⇒ 2⇒ 3⇒ 4⇒ 1
![Page 6: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/6.jpg)
Tree Theorems
TheoremThe following statements are equivalent for a loop-free undirectedgraph T (V ,E ):
1. T is a tree.
2. T is connected, and |V | = |E |+ 1
3. T contains no cycles, and |V | = |E |+ 1
![Page 7: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/7.jpg)
Tree Theorems
TheoremFor every tree T (V ,E ), if |V | ≥ 2, then T has at least twopendant vertices.
Proof.
I 2|E | =∑
v∈V dv
I Assume there is one vertex of degree 1:⇒ 2|E | ≥ 2(|V | − 1) + 1⇒ 2|E | ≥ 2|V | − 1⇒ |E | ≥ |V | − 1
2 > |V | − 1 contradiction
![Page 8: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/8.jpg)
Spanning Tree
Definitionspanning tree:A subgraph T of a graph G is called a spanning tree of G, if T is atree and T includes all vertices of G.
Definitionminimum spanning tree:A spanning tree for which the sum of the edge weights is minimum.
![Page 9: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/9.jpg)
Kruskal’s Algorithm
Kruskal’s algorithm
1. Set the counter i ← 1, select e1 ∈ E , where wt(e1) isminimum
2. For 1 ≤ i ≤ n − 2:if edges e1, e2, . . . , ei have been selected, select ei+1 from theremaining edges in G so that:
I wt(ei+1) is minimumI The subgraph determined by e1, e2, . . . , ei , ei+1 contains no
cycles.
3. Replace i ← i + 1I If i = n − 1 the subgraph with edges e1, e2, . . . , en−1 is an
optimal spanning tree of G .I If i < n − 1 return to step 2.
![Page 10: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/10.jpg)
Rooted Tree
I The tree T is a directed tree, if all edges of T are directed.I T is called a rooted tree if there is a unique vertex r , called
the root, with indegree of 0, and for all other vertices v theindegree is 1.
I All vertices with outdegree 0 are called leaf.I All other vertices are called branch node or internal node.
![Page 11: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/11.jpg)
Node Level
Definitionlevel:distance from root
I parent: preceeding node
I child: succeeding node
![Page 12: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/12.jpg)
Example
Example
I root: r
I leaves: x y z u v
I internal nodes: p n t s q w
I parent of y : wchildren of w : y and z
![Page 13: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/13.jpg)
Binary Rooted Trees
I binary rooted tree: Every node has at most 2 children
I complete binary rooted tree: Every node has 0 or 2 children
![Page 14: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/14.jpg)
Operation tree
I Mathematical operations can be represented by trees.
I root and internal nodes contain operators
I the leaves contain variables/constants
![Page 15: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/15.jpg)
Traversal of Operation Tree
1. inorder: left sub-tree, root, right sub-tree
2. preorder: root, left sub-tree, right sub-tree
3. postorder:left sub-tree, right sub-tree, root
I Changing operator precedence requires parantheses in inordernotation.
![Page 16: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/16.jpg)
Example
Example
t +u · v
w + x − y z
![Page 17: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/17.jpg)
Example of preorder traversal
Example
+ t / ∗ u v + w − x ↑ y z
![Page 18: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/18.jpg)
Example of inorder traversal
Example
t + u ∗ v / w + x − y ↑ z
![Page 19: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/19.jpg)
Example of postorder traversal
Example
t u v ∗ w x y z ↑ − + / +
![Page 20: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/20.jpg)
m-ary Tree
Definitionm-ary tree:The outdegree of all vertices, except leaves, is m.
![Page 21: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/21.jpg)
m-ary Trees
TheoremIn an m-ary tree:
I number of nodes n
I number of leaves l
I number of internal nodes i
I n = m · i + 1
I l = n − i = m · i + 1− i = (m − 1) · i + 1
I i = l−1m−1
![Page 22: Discrete Mathematics - Treesweb.itu.edu.tr/~gencata/courses/DM/trees.pdfDiscrete Mathematics Trees H. Turgut Uyar Ay¸seg¨ul Gencata Emre Harmancı 2007](https://reader030.vdocuments.net/reader030/viewer/2022020315/5ae159da7f8b9a595d8bd0a2/html5/thumbnails/22.jpg)
Example
Example
How many matches are played in a tennis tournament of 27players?
I a leaf for each player: l = 27
I an internal node for each match: m = 2
I number of matches: i = l−1m−1 = 27−1
2−1 = 26