trees
1
trees 1 are lists enough? for correctness sure want to - - PowerPoint PPT Presentation
trees 1 are lists enough? for correctness sure want to effjciently access items better than linear time to fjnd something 2 want to represent relationships more naturally inter-item relationships in lists 1 2 3 4 5 List: nodes
1
2
3
4
image: Ivicia Letunic and Mariana Ruiz Villarreal, via the tool iTOL (Interative Tree of Life), via Wikipedia
5
image: Ivicia Letunic and Mariana Ruiz Villarreal, via the tool iTOL (Interative Tree of Life), via Wikipedia
6
Kashubian INDO-IRANIAN IRANIAN INDO-ARYAN WESTERN EASTERN WESTERN INDIC Gandhari CENTRAL INDIC Maharashtri Sindhi Konkani Gorani Balochi Kurdish Parthian Talysh Gilaki Scythian Sarmatian Alanic CELTIC Manx Irish Cornish Breton GOIDELIC BRYTHONIC Galatian Celtiberian TOCHARIAN ARMENIAN ANATOLIAN ALBANIAN GERMANIC EAST Gothic Vandalic Burgundian Dutch Afrikaans Icelandic Faroese Norwegian Norn Swedish Danish Old Norse BALTO-SLAVIC BALTIC SLAVIC WEST EAST SOUTH Old West Slavic ITALIC Galindan Prussian Sudovian Latvian Lithuanian Selonian Semigallian Belorussian Russian Rusyn Bulgarian Macedonian Czech Slovak Pomeranian LATINO-FALISCAN Latin Faliscan SABELLIC Classical Latin Vulgar Latin EASTERN Romanian Dalmatian Aromanian ITALO-WESTERN ITALO-DALMATIAN IBERIAN Italian Astur-Leonese Galician-Portuguese INDO-EUROPEAN Hittite Luwian Lycian Carian Palaic Lydian PAHARI Dogri Garhwali DARDIC Kashmiri Pashayi Magahi Bhojpuri Maithili Oriya Magadhi Dhivehi Avestan Bactrian Sogdian Yaghnobi Tat Old Persian Persian Tajik Juhuru Aequian Marsian Oscan Sardinian Logudorese Campidanese Ecclesiastical Latin Gaulish Lepontic Noric Old West Norse Old East Norse Standard German Old High German Flemish Yiddish Old Frisian Old English ANGLO-FRISIAN Scots English Turfanian Kuchean INSULAR CONTINENTAL Armenian Albanian ROMANCE Sinhalese Vedda Vedic Sanskrit Hindi Urdu Dakhini Rekhta Mozarabic Aragonese Walloon Emilian Rhaetian Friulian HELLENIC Aegean Mycenaean DORIAN Northwest Greek Doric Attic Arcado Cypriot Ionic Epic Greek Classical Greek Koine Greek Greek Tsakonian Low German Cumbric Welsh Scottish Gaelic Gallo Volscian Umbrian Saka Ossetian Pashto Pamiri Bengali Bhil Marathi Shina Kumaoni WEST Prakrit INSULAR INDIC Potwari Punjabi Domari Waziri Yidgha Shughni Vanji Sarikoli Khotanese Khwarezmian Median Mazanderani Shahmirzadi CASPIAN Zazaki Zaza-Gorani Middle Persian Bukhori Dari Lurish Bakhtiari Old East Slavic Ukrainian Ruthenian Old Novgorod Old Church Slavonic Church Slavonic Serbo-Croatian LECHITIC Sorbian Polish Ivernic Pictish Common Brittonic Hazaragi Deilami Greenlandic Norse Old Gutnish Pisidian Old Saxon Old Dutch Yola Assamese WEST EAST CENTRAL GERMAN Limburgish Old East Low Franconian SOUTH NORTH Niya Shauraseni Nuristani HINDUSTANI BIHARI ACHAEAN AEOLIC Beotian Thessalian EAST Yazgulami NORTH SOUTH Nepali Palpa Halbi Chittagonian NORTH CENTRAL EASTERN Lahnda Paisaci Haryanvi Luxembourgish Ripuarian Thuringian Kumzari Alemannic Austro-Bavarian Cimbrian Istriot Sassarese Neapolitan Sicilian GALLO-IBERIAN OCCITAN GALLIC CISALPINE Spanish Portuguese Galician Catalan Occitan Ligurian Lombard Piedmontese Venetian Arpitan Romansh UPPER GERMAN Swiss German Old Polish Romani Gujarati Rajasthani Norman French Pali Sanskrit Asturian Leonese Mirandese Slovene Serbian Croatian Bosnian WESTERN EASTERN Knaanic Czech-Slovak Polabian Silesian Fala Ladino Extremaduran Old Spanish Ladin Corsican Istro-Romanian Megleno-Romanian LANGUE D'OÏL Crimean Gothic North Frisian Saterland Frisian West Frisian Elfdalian LOW FRANCONIAN Eonavian WEST
image: via Wikipedia/Mandrak
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
23
23
23
23
23
23
24
24
24
25
25
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
called “balance factor”
43
44
44
45
46
46
47
48
49
50
51
52
52
52
52
53
54
54
54
54
55
55
56
57
58
58
59
60
61
62
63
64
65
66
67
68
69
G P U N 1 2 3 4 5 G P U N 1 2 3 4 5
image: Wikipedia/Abloomfj
70
G P U N 1 2 3 4 5 G P U N 1 2 3 4 5
image: Wikipedia/Abloomfj
70
G P U N 1 2 3 4 5 G P U N 1 2 3 4 5
image: Wikipedia/Abloomfj
70
71
G P U N 1 2 3 4 5 G U N P 1 2 3 4 5
image: Wikipedia/Abloomfj
72
73
G P U N 1 2 3 4 5 G U P N 1 2 3 4 5
image: Wikipedia/Abloomfj
74
75
75
75
75
75
75
76
77
78
79
80
81
81
81
82
83
84
85
86
86
87
88
88
89
89
90
90
90
91
program vars int z functions foo() params int z vars body for int y y < x y++ body cout y endl main() params vars int z =5 body cout "enter z" endl cin z foo() z
92
program vars int z functions foo() params int z vars body for int y y < x y++ body cout y endl main() params vars int z =5 body cout "enter z" endl cin z foo() z
92
program vars int z functions foo() params int z vars body for int y y < x y++ body cout y endl main() params vars int z =5 body cout "enter z" endl cin z foo() z
class ASTNode { ... }; // public class ForNode extends ASTNode class ForNode : public ASTNode { ... private: ASTNode *init, *condition, *update, *body; }; 93
program vars int z functions foo() params int z vars body for int y y < x y++ body cout y endl main() params vars int z =5 body cout "enter z" endl cin z foo() z
class ASTNode { ... }; // public class ForNode extends ASTNode class ForNode : public ASTNode { ... private: ASTNode *init, *condition, *update, *body; }; 93
program vars int z functions foo() params int z vars body for int y y < x y++ body cout y endl main() params vars int z =5 body cout "enter z" endl cin z foo() z
class ASTNode { ... }; // public class ForNode extends ASTNode class ForNode : public ASTNode { ... private: ASTNode *init, *condition, *update, *body; }; 93
94
95