RWTH Aachen, Lehrstuhl für Informatik IX Kapitel 3: Suchen in Mengen - Datenstrukturen und Algorithmen - 51
|
|
- Ruth Berger
- vor 8 Jahren
- Abrufe
Transkript
1 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 51 Sucbäume Biser betractete Algoritmen für Suce in Mengen Sortierte Arrays A B C D - Nur sinnvoll für statisce Mengen, da Einfügen und Entfernen O(n) Zeit benötigt. - Zeitbedarf für Suce: O(log n) (binäre Suce) - Bereicanfragen: alle Einträge zwiscen 127 und 135 Hasing - stark abängig von gewälter Hasfunktion - Kollisionsbeandlung nötig - Anzal der Objekte muss vorer bekannt sein (im Groben) - keine Bereics- oder Änlickeitsanfragen Einträge für Maier u.ä.
2 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 52 Sucbäume Suc-Bäume CPU MM flüctig - beliebige dynamisc erweitbar - Operationen Einfügen, Entfernen, Sucen sind in O(log n) realisierbar A - effiziente Lösungen für die Speicerung im Sekundärspeicern Wir betracten im weiteren folgende Arten von Bäumen - Binäre Sucbäume - Balancierte Bäume binäre nict binäre - AVL Bäume, B-Bäume, R-Bäume - Optimale binäre Sucbäume (für statisce Daten)
3 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 53 Binäre Sucbäume Ausgangspunkt Binäre Suce S= Start in der Mitte -> Wurzel - Aufteilung in - linker Teil jeweils - recten Teil one Mitte - Rekursiv weiter: - linker Teilbaum aus linker Hälfte - recter Teilbaum aus recter Hälfte
4 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 54 Definition Binärer Sucbaum Definition Ein binärer Sucbaum für eine Menge von n Sclüsseln S={x 1, x 2,..., x n} bestet aus einer Menge von B bescrifteten Knotenv ={v, 1 v,..., 2 v n} mit der Bescriftungsfunktion value: v -> S value ist COrdnungseraltend, d.. für linken Teilbaum für Knoten viim linken Teilbaum und vjim recten Teilbaum des Knoten vk gilt: value(v) value(v ) value(v) i k j Begriffe Pfade 37 v k Höe 4 18 Grad = recter Teilbaum
5 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 55 Definition Binärer Sucbaum Datenstruktur class Node { private int value; //mit getvalue/setvalue private Node leftcild; //mit getsetleftcild private Node rigtcild; //mit get/setrigtcild } class Tree{ private Node root; //mit get/set Root public void insert(int value); public void delete(int value); public Node searc(int value); }
6 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 56 Binärer Sucbaum mit Bereicsblättern Bereicsblätter Darstellung A B - leere Teilbäume werden ier las Bereicsblätter dargestellt, die Intervalle zwiscen den gespeicerten Sclüsseln, beinaltet - Ein Baum mit n Knoten at n + 1Bereicsblätter - erfolglose Suce endet immer in einem Bereicsblatt - Bereicsblätter werden in de Regel nict gespeicert Beispiel (-,11) (48, ) (11,17) (17,18) (18,19) (19,23) (23, 32) (32,37) (37, 38) (38,39) (39,42) (42,43) (43,45) (45,48)
7 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 57 Suce in Binärem Sucbaum Programm - Suce in Binärem Baum public Node searc (int value) { // ier: iterative Version Node v = root; wile(v!= null && v.getvalue()!= value){ if[value < v.getvalue()) v = v.getleftcild(); else /* value > v.getvalue() */ v = v.getrigtcild(); }/* v== null v.getvalue() == value */ return v; nict erfolgreic erfolgreic } Die Metode searc endet - in einem inneren Knoten, wenn value gefunden wurde oder - in einem leeren Teilbaum ( Bereicsblatt ), wenn value nict gefunden wurde
8 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 58 Operationen beim Binären Sucbaum Operation t.insert(value) für Tree T - Suce value in T, Ergebnis sei Bereicblatt(x, i x i+1) - Ersetze Bereicsblattdurc: x, x i i+1 val value (x i,val) (val, x i+1 ) (x, i value) (value, x ) i+1 Operation t.delete(value) - Suce zu löscenden Knoten v - Untersceide drei Fälle: 1. v at nur leere Teilbäume -> v kann unmittelbar gelösct werden. 2. v at genau einen nict leeren Teilbaum vs ->ersetze v durc vs 3. at zwei nict leere Teilbäume: * Suce im linken Teilbaum von v den rectesten (=größten) Unterknoten w * ersetze v durc w * lösce w an der ursprünglicen Stelle
9 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 59 Beispiel zum Einfügen Operationen: Beispiel: Einfügen von Suce Einfügestelle -> endet in dem Bereicsblatt (7, 18) [= leerer Teilbaum] 2. Bereicblatt wird ersetzt durc neuen Knoten 12
10 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 6 Beispiel zum Löscen Operationen: Beispiel: Entferne 12 -> at keine Nacfolger, kann direkt entfernt werden Beispiel: Entferne 7 -> at einen Nacfolger ersetze 7 durc
11 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 61 Beispiel zum Löscen 18 1 * links immer rects 23 v w 37 (-, 12) (12, 18) (18, 21) (21, 23) Operationen: (23, 37) (37, 41) (41, ) Beispiel: Entferne 23 - suce im linken Teilbaum den aus weitesten rects liegenden Knoten w: 21 - ersetze durc entferne 21
12 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 62 Sucbäume für lexikografisce Sclüssel Beispiel: Deutsce Monatsnamen Einfügungen in kalendarisce Reienfolge: Jan Januar Feb Februar Mae Maerz April Juni Mai Aug August Dez Dezember Juli Okt Oktober Sep September November * Binärer Sucbaum: Inorder-Durclauf: April, August, Dezember,, Februar, Januar, Juli, Juni, Maerz, Mai, Nov., Okt, Sept * Beobactung: Baum ist nict balanciert Nov
13 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 63 Komplexitätsanalyse Binärer Sucbaum Analyse der Laufzeit Operationen Insert und Delete besteen aus - Suce der Position im Baum - lokaler Änderung im Baum: O(1) Analyse des Sucverfarens - Anzal Vergleice entsprict Höe des Baums, da immer genau ein Pfad betroffen ist - Sei (t) die Höe des Sucbaums t, dann ist die Komplexität für searc: O((t)) - Abängigkeit von der Anzal de Knoten? a) Wie oc ist ein binärer Sucbaum mit n Knoten? bzw. b) Wie viele Knoten entält ein linearer Sucbaum der Höe maximal bzw. minimal?
14 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 64 Komplexitätsanalyse Binärer Sucbaum Best-Case max Anzal von Knoten für Höe Betractete Fall: Alle Knoten aben zwei Nacvolger (sie auf die Blätter) Höe=1 Anzal Knoten: n = 1 Höe=2 1 1 n=2*1+1= Höe=3 3 n =2-1= Höe= n = 2-1= 15 4 Allgemein: n=2 (2-1 -1) +1 = =2-1
15 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 65 Komplexitätsanalyse Binärer Sucbaum Worst-Case - alle Knoten bis auf ein Blatt aben nur einen Nacfolger - Baum degeneriert zu einer linearen Liste - Baum der Höe at nur n=knoten Anzal Vergleice in Abängigkeit von n (Anzal Knoten) Die Anzal Vergleice entsprict der Höe k Best Case: voll gefüllter Baum at n 2-1 Knoten Umformung: ld(n + 1) bzw. = ld(n + 1) Komplexität: O(ld n) vgl. binäre Suce Worst Case: lineare Liste als Baum at n = Knoten Komplexität: O(n) vgl. lineare Suce Bsp: worst best = = 2 2 1Mio.
16 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 66 Komplexitätsanalyse Binärer Sucbaum Problemanalyse Ziel A Operationen Insert, Delete, Searc (Hauptbestandteil ist jeweils Searc mit O(log n) Durc die Operationen Insert, Delete kann ein Binärbaum zu einer linearen Liste entarten - Der binäre Sucbaum at im optimalen Fall eine gute Komplexität für die Operationen Insert, Delete, Searc: O(log n) - Durc Insert, Delete kann ein Binärbaum zu einer linearen Listentarten Die Operationen Insert und Delete sollen so verändert werden, dass ein Baum immer balanciert bleibt Balancieren: - Anzal Knoten im linken und recten Teilbaum ungefär gleic - Höe der beiden Teilbäume soll etwa gleic groß sein.
17 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 67 Balancierte Bäume Ziel: Verindern der Worst-Case Komplexität für Searc O(n) - Verindern der Worst-Case Komplexität O(n) - entartete Bäume verindern durc ausbalancieren Entartete Bäume verindern Bäume ausbalancieren Balancieren (zwei Arten) - Gleicgewictsbalancierung BB(a) Bounded Balance mit Grenze a: Die Anzal der Blätter in den Unterbäumen wird ausbalanciert. Dabei bescreibt a den maximalen Unterscied zwiscen den Teilbäumen - Höenbalancierung: die Höe der beiden Teilbäume wird ausbalanciert (z.b. Höe 1)
18 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 68 AVL-Baum Balancierter Baum istorisce erste Variante eines balancierten Baumes (von Adelson, Velski, Landis) Definition: Ein AVL -Baum ist ein binärer Sucbaum mit einer ein AVL-Baum ist ein binärer Sucbaum mit folgender Strukturbindung: Strukturbedingung: Für alle Knoten gilt: die Höe der beiden Teilbäume untersceiden sic öcstens um eins A Operationen Damit diese AVL-Bedingung auc nac Insert oder Delete noc gilt, muss der Baum ggf. rebalanciert werden.
19 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 69 AVL-Baum Gegenbsp: Beispiele =2 =2 =1 =4 =1 =4 =2 =2 =2 =3 AVL-Baum D 1 kein AVL Baum =2 D =2 AVL-Baum 1 D 1 AVL 1 Untersucung der Komplexität - Operationen Searc ängt weiterin von der Höe ab - Frage: Wie oc kann ein AVL-Baum für eine gegebene Knotenanzal n maximal werden? bzw. aus wie vielen Knoten muss ein AVL-Baum der Höe mindestens besteen?
20 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 7 Höe eines AVL -Baumes Anzal Knoten in Abängigkeit von der Höe Gesuct: minimale Knotenanzal d.. wir betracten minimal gefüllte Bäume. Dabei sei N() die min. Anzal Knoten für AVL Baum der Höe = 1: N() = 1 (nur Wurzel) = 2: N() = 2 (nur ein Zweig gefüllt) =3:N()=4 N(2) N(1) + 1= = 4
21 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 71 Höe eines AVL -Baumes Anzal Knoten in Abängigkeit von der Höe Für beliebige min. gefüllten AVL-Baum der Höe 3 gilt: 1) Die Wurzel besitzt zwei Teilbäume 2) Ein Teilbaum at Höe -1 3) der andere Teilbaum at Höe -2 1 N(-1) N(-2) -1-2 N()=N(-1)+N(-2)+1 änlic zu Fibonacci-Reie
22 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 72 Höe eines AVL -Baumes Ein minimal gefüllter AVL -Baum eißt auc mancmal Fibonacci- Baum 1 =1 Baum: N()= 2 = 2 N(-1)+N(-2)+1 >2 = Fibonacci: F()= 1 = 1 f(-1)+f(+2) >1
23 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 73 Höe eines AVL -Baumes AVL-Baum (Fibonacci-Baum) Vergleic Fibonacci-Reie f() mit AVL Baumöe N() = f() N() = = N() = f( + 2) - 1 Beweis mittels vollständiger Induktion Wie oc ist ein Baum, der aus n Knoten bestet Verwendung der Fibonacci-Formel f - f F( ) = mit f =, f = f() = - 1 mit = 1 + 5, 1 =
24 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 74 Höe eines AVL -Baumes Höe in Abängigkeit von der Knoten-Anzal N()=F(+2)-1= ( - ) - 1 (one Beweis) 1 One Beweis Also gilt für einen AVL -Baum mit n Knoten für die Höe N() n und mit N() = F( + 2) - 1 ergibt sic: n F(+2)-1 n - 1 n+1 log (n+1) log (n+1)
25 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 75 Höe eines AVL -Baumes Höe in Abängigkeit von der Knoten-Anzal log (n+1) ln 2/ln ld( n + 1) < 1,444 ld (n + 1) Û zum Vergleic: maximalgefüllter binärer Sucbaum: Vergleic ld(n + 1) mit max. gefüllten Binärem Sucbaum: ld(n+1) Ergebnis: A B C D - ein AVL-Baum ist maximal 44% öer als ein maximal ausgeglicener binärer Sucbaum. - Komplexität für Searc: O(log n) auc im worst case. Operationen A - Frage: Wir müssen Operationen Insert, Delete verändert werden, damit die Balance eines AVL-Baumes gewärleistet bleibt?
26 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 76 Operationen auf AVL -Bäumen Sucen genauso wie bei binären Sucbaum Einfügen / Löscen Scritt 1) wie bei binärem Sucbaum (Suce Einfügestelle bzw. zu entfernenden Knoten und früer Einfügen bzw. Entfernne aus) C Scritt 2) Festelle, ab AVL-Eigenscaft an der Einfüge- bzw. Entfernungsstelle noc gilt. Scritt 3) Rebalancierung durc Rotation Untersucung 1. A 1. Wie kann festgestellt werden, ob ein Baum nict mer balanciert ist? 2. Wie kann ein Baum rebalanciert werden?
27 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 77 Balance bei AVL -Bäumen Vorgeensweise A Bei jedem Knoten wird die Höendifferenz (Balance b) der beiden Teilbäume abgespeicert: b = Höe(recter Teilbaum) - Höe (linker Teilbaum) Beispiel
28 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 78 Balance bei AVL -Bäumen Einfügen - zuerst Einfügen wie bei Binärbaum (s.o.) - beim Einfügen kann sic nur die Balance b von Knoten verändern, die auf dem Sucpfad liegen. ->dabei kann AVL-Kriterium verletzt werden - Gee nac dem Einfügen eines neuen Knoten den Sucpfad wieder zurück und aktualisiere die Balance
29 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 79 Einfügen bei AVL -Bäumen Bsp: Einfügen (1) Einfügen (33) Ablauf: Nac Einfügen: Kritiscen Knoten bestimmen (näcstgelegener Vorgänger zum neuen Knoten mit b = 2) dieser ist Ausgangspunkt der Reorganisations (Rotation) - Pfad vom kritiscen zum neuen Knoten legt Rotationstyp fest
30 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 8 AVL-Baum: Einfacrotation LL-Rotation Bsp: Einfügung wer im linken Teilbaum des linken Teilbaums -1-2 Baum ist nac LL-Rotation wieder balanciert -1 <- -1 B B C +3 Kritiscer Knoten Rotiere linken Teilbaum +1 B1 7 B C +1
31 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 81 AVL-Baum: Einfacrotation RR-Rotation: C B B Kritiscer Knoten Rotiere recten Teilbaum C 7 +1 B1 18 B2 +1
32 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 82 AVL-Baum: Doppelrotation LR-Rotation B > C Kritiscer Knoten B B2a B2b - C B2 +1 Eine einface Rotation reict ier nict aus, da der problematisce Teilbaum innen liegt -> betracte Teilbaum B2 näer
33 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 83 AVL-Baum: Doppelrotation LR-Rotation B B2a B2b C -1 B B2a B2b C Bemerkung: es spielt keine Rolle, ob der neue Knoten im Teilbaum B2a oder in B2b eingefügt wurde Bemerkung: RL-Rotation: analog (symmetrisc) zur LR-Rotation
34 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 84 AVL-Baum: Komplexität beim Einfügen Komplexität A B Die Rotation stekken das AVL-Kriterium im unbalancierten Unterbaum wieder er und sie bewaren die Sortierreienfolge (d.. Sucbaumeigenscaft) - Wenn ein Baum rebalanciert wird, ist der entsprecende Unterbaum danac immer genauso oc wie vor dem Einfügen => der restlice Baum bleibt konstant und muss nict überprüft werden => beim Einfügen eines Knoten benötigt man öcstens eine Rotation zur Rebalancierung??A Aufwand: Suce + Einfügen + Rotation O() + O(1) + O(1) = O() = O(log n)
35 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 85 Löscen bei AVL -Bäumen Vorgeensweise - zuerst normales Löscen wie bei Binärbaum - Nur für Knoten auf den Löscpfad kann das AVL-Kriterium verletzt werden (vgl. Einfügen) A Ablauf: - nac dem eigentlicen Löscen: kritiscen Knoten bestimmen: näcster Vorgänger zum tatsäclicen entfernten Knoten mit b = 2 - er kritisce Knoten ist Ausgangspunkt der Reorganisation (=Rotation) - Rotationstyp wird bestimmt, als ob im gegenüberliegenden Unterbaum ein Knoten eingefügt worden wäre.
36 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 86 Löscen bei AVL -Bäumen Kritisces Beispiel B B C Rotiere gegenüberliegenden Teilbaum -1 B B C -1 Beobactung: Der Teilbaum ist nac der Rotation ier nict ausbalanciert Dies liegt daran, dass ein Teilbaum rotiert, der selbst ausbalanciert wird.
37 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 87 Löscen bei AVL -Bäumen Komplexität Beim Löscen eines Knotens wird Beim Löscen eines Knoten wird - das AVL-Kriterium (lokal) wiederergestellt, die Sortierreienfolge bleibt eralten. - kann es vorkommen, dass der rebalancierte Unterbaum nict dieselbe Höe wie vor dem löscen besitzt. -> auf dem weiteren Pfad zur Wurzel kann es zu weiteren Rotationen kommen -> beim löscen werden maximal Rotationen benötigt. das AVL -Kriterium wiederergestellt, die Sortierreienfolge bleibt eralten kann es vorkommen, daß der rebalancierte Unterbaum nict die gleice Höe wie vor dem Löscen besitzt auf dem weiteren Pfad zur Wurzel kann es zu weiteren Rebalancierungen (des obigen Typs, also immer im anderen Unterbaum) kommen beim Löscen werden maximal Rotationen benötigt Aufwand: Entfernen + Rotieren O() + O() = O(log(n)) Entfernen + Rebalancieren O() + O() = O() = O(log n)
38 RWTH Aacen, Lerstul für Informatik IX Kapitel 3: Sucen in Mengen - Datenstrukturen und Algoritmen - 88 Zusammenfassung Binäre Bäume Vergleic mit Hasing - Hasing at im optimalen Fall konstante Komplexität O(1), im sclectesten Fall O(n) - Damit Hasing gut funktioniert, müssen viele Parameter bekannt sein: - Wertebereic - Größe der Tabelle, d.. Speicerplatz - Gute Hasfunktion - Bäume aben in allen Operationen (Sucen, Einfügen, Entfernen) logaritmisce Komplexität, O(log n) - Bei Bäumen ist kein Wissen über die Daten nötig
Algorithmen und Datenstrukturen Balancierte Suchbäume
Algorithmen und Datenstrukturen Balancierte Suchbäume Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Einführung Einfügen und Löschen Einfügen
MehrAVL-Bäume Analyse. Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl:
AVL-Bäume Analyse (Folie 85, Seite 39 im Skript) Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl: 0 falls n = 0 F n = 1 falls
MehrAlgorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein.
Aufgabe 10 Binäre Bäume a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge, 28, 35, 31, 9, 4,, 17, 37, 25 ein. 1. Einfügen von : 3. Einfugen von 35: 2. Einfügen von 28: 28 28 10. Einfügen
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen
MehrAlgorithmen und Datenstrukturen Suchbaum
Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen
Mehr1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert
Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume
MehrFolge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12
Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben
Mehr9.4 Binäre Suchbäume. Xiaoyi Jiang Informatik II Datenstrukturen und Algorithmen
9.4 Binäre Suchbäume Erweiterung: Einfügen an der Wurzel Standardimplementierung: Der neue Schlüssel wird am Ende des Suchpfades angefügt (natürlich, weil zuerst festgestellt werden muss, ob der Schlüssel
MehrKONSTRUKTION VON ROT-SCHWARZ-BÄUMEN
KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN RALF HINZE Institut für Informatik III Universität Bonn Email: ralf@informatik.uni-bonn.de Homepage: http://www.informatik.uni-bonn.de/~ralf Februar, 2001 Binäre Suchbäume
MehrWiederholung ADT Menge Ziel: Verwaltung (Finden, Einfügen, Entfernen) einer Menge von Elementen
Was bisher geschah abstrakter Datentyp : Signatur Σ und Axiome Φ z.b. ADT Menge zur Verwaltung (Finden, Einfügen, Entfernen) mehrerer Elemente desselben Typs Spezifikation einer Schnittstelle Konkreter
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
Mehr13. Binäre Suchbäume
1. Binäre Suchbäume Binäre Suchbäume realiesieren Wörterbücher. Sie unterstützen die Operationen 1. Einfügen (Insert) 2. Entfernen (Delete). Suchen (Search) 4. Maximum/Minimum-Suche 5. Vorgänger (Predecessor),
MehrKapiteltests zum Leitprogramm Binäre Suchbäume
Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm
MehrProgrammiertechnik II
Bäume Symboltabellen Suche nach Werten (items), die unter einem Schlüssel (key) gefunden werden können Bankkonten: Schlüssel ist Kontonummer Flugreservierung: Schlüssel ist Flugnummer, Reservierungsnummer,...
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrIdee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10
Binäre Bäume Bäume gehören zu den wichtigsten Datenstrukturen in der Informatik. Sie repräsentieren z.b. die Struktur eines arithmetischen Terms oder die Struktur eines Buchs. Bäume beschreiben Organisationshierarchien
MehrGrundlagen der Programmierung 2. Bäume
Grundlagen der Programmierung 2 Bäume Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 24. Mai 2006 Graphen Graph: Menge von Knoten undzugehörige (gerichtete oder ungerichtete)
MehrSuchbäume. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Suchbäume Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes
Mehrt r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )
Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen
MehrDatenstruktur, die viele Operationen dynamischer Mengen unterstützt
Algorithmen und Datenstrukturen 265 10 Binäre Suchbäume Suchbäume Datenstruktur, die viele Operationen dynamischer Mengen unterstützt Kann als Wörterbuch, aber auch zu mehr eingesetzt werden (Prioritätsschlange)
MehrLernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.
6. Bäume Lernziele 6. Bäume Lernziele: Definition und Eigenschaften binärer Bäume kennen, Traversierungsalgorithmen für binäre Bäume implementieren können, die Bedeutung von Suchbäumen für die effiziente
MehrVorname:... Matrikel-Nr.:... Unterschrift:...
Fachhochschule Mannheim Hochschule für Technik und Gestaltung Fachbereich Informatik Studiengang Bachelor of Computer Science Algorithmen und Datenstrukturen Wintersemester 2003 / 2004 Name:... Vorname:...
MehrBalancierte Bäume. Martin Wirsing. in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer. http://www.pst.ifi.lmu.de/lehre/ss06/infoii/ SS 06
Balancierte Bäume Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer http://www.pst.ifi.lmu.de/lehre/ss06/infoii/ SS 06 2 Ziele AVL-Bäume als einen wichtigen Vertreter balancierter
Mehr15 Optimales Kodieren
15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen
MehrADS 1: Algorithmen und Datenstrukturen
ADS 1: Algorithmen und Datenstrukturen Teil IX Uwe Quasthoff Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 1 Dezember 017 [Letzte Aktualisierung: 04/1/017, 10:56]
MehrVorkurs Informatik WiSe 15/16
Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 16.10.2015 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Suchen Binärsuche Binäre Suchbäume 16.10.2015 Dr. Werner
MehrInformatik II Bäume zum effizienten Information Retrieval
lausthal Informatik II Bäume zum effizienten Information Retrieval. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Binäre Suchbäume (binary search tree, BST) Speichere wieder Daten als "Schlüssel
Mehr3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1
3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)
MehrKap. 4.2: Binäre Suchbäume
Kap. 4.2: Binäre Suchbäume Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 11. VO DAP2 SS 2009 26. Mai 2009 1 Zusätzliche Lernraumbetreuung Morteza Monemizadeh:
MehrBinäre Bäume Darstellung und Traversierung
Binäre Bäume Darstellung und Traversierung Name Frank Bollwig Matrikel-Nr. 2770085 E-Mail fb641378@inf.tu-dresden.de Datum 15. November 2001 0. Vorbemerkungen... 3 1. Terminologie binärer Bäume... 4 2.
MehrNachtrag zu binären Suchbäumen
Nachtrag zu binären Suchbäumen (nicht notwendigerweise zu AVL Bäumen) Löschen 1 3 2 10 4 12 1. Fall: Der zu löschende Knoten ist ein Blatt: einfach löschen 2. Fall: Der zu löschende Knoten hat ein Nachfolgeelement
MehrÜbersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)
Datenstrukturen und Algorithmen Vorlesung 9: (K7) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.rwth-aachen.de/i2/dsal0/ Algorithmus 8. Mai 200 Joost-Pieter
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrB-Bäume I. Algorithmen und Datenstrukturen 220 DATABASE SYSTEMS GROUP
B-Bäume I Annahme: Sei die Anzahl der Objekte und damit der Datensätze. Das Datenvolumen ist zu groß, um im Hauptspeicher gehalten zu werden, z.b. 10. Datensätze auf externen Speicher auslagern, z.b. Festplatte
MehrHilfe zum neuen Online-Shop
Hilfe zum neuen Online-Sop Hier finden Sie umfassend bescrieben, wie Sie sic in unserem neuen Sop zurectfinden. Wenn Sie Fragen zur Kunden-Nr., Kunden-ID oder zum Passwort aben, rufen Sie uns bitte an:
MehrKap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis
Kap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 13./14. VO DAP2 SS 2009 2./4. Juni 2009 1 2. Übungstest
MehrDatenstrukturen und Algorithmen
Datenstrukturen und Algorithmen VO 708.031 Bäume robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische Grundprinzipien 3. Sortierverfahren 4. Halden
MehrKapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete
Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)
Mehr- k Maximalwerte aus Menge mit n >> k Elementen (Rangfolgebestimmung von Suchmaschinen!) Die typische Operationen:
6 Partiell geordnete binäre Bäume: Heap (Haufen) Motivation für manchen Anwendungen nur partielle Ordnung der Elemente statt vollständiger nötig, z.b. - Prioritätsschlange: nur das minimale (oder maximale)
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
MehrAnmerkungen zur Übergangsprüfung
DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung
MehrÜberblick. Lineares Suchen
Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrDer linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v)
Ein Baum T mit Knotengraden 2, dessen Knoten Schlüssel aus einer total geordneten Menge speichern, ist ein binärer Suchbaum (BST), wenn für jeden inneren Knoten v von T die Suchbaumeigenschaft gilt: Der
MehrRekursionen. Georg Anegg 25. November 2009. Methoden und Techniken an Beispielen erklärt
Methoden und Techniken an Beispielen erklärt Georg Anegg 5. November 009 Beispiel. Die Folge {a n } sei wie folgt definiert (a, d, q R, q ): a 0 a, a n+ a n q + d (n 0) Man bestimme eine explizite Darstellung
Mehr368 4 Algorithmen und Datenstrukturen
Kap04.fm Seite 368 Dienstag, 7. September 2010 1:51 13 368 4 Algorithmen und Datenstrukturen Java-Klassen Die ist die Klasse Object, ein Pfeil von Klasse A nach Klasse B bedeutet Bextends A, d.h. B ist
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
Mehr50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte
50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien
MehrBalancierte Bäume. Minimale Knotenanzahl von AVL-Bäumen. AVL-Bäume. Definition für "balanciert":
Balancierte Bäume Aufwand, ein Element zu finden, entspricht der Tiefe des gefundenen Knotens im worst case = Tiefe des Baumes liegt zwischen log N und N Definition für "balanciert": es gibt verschiedene
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrSuchen und Sortieren Sortieren. Heaps
Suchen und Heaps (Folie 245, Seite 63 im Skript) 3 7 21 10 17 31 49 28 14 35 24 42 38 Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrDATENSTRUKTUREN UND ZAHLENSYSTEME
DATENSTRUKTUREN UND ZAHLENSYSTEME RALF HINZE Institute of Information and Computing Sciences Utrecht University Email: ralf@cs.uu.nl Homepage: http://www.cs.uu.nl/~ralf/ March, 2001 (Die Folien finden
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrEine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder
Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element
MehrKonzepte der Informatik
Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens
MehrAlso kann nur A ist roter Südler und B ist grüner Nordler gelten.
Aufgabe 1.1: (4 Punkte) Der Planet Og wird von zwei verschiedenen Rassen bewohnt - dem grünen und dem roten Volk. Desweiteren sind die Leute, die auf der nördlichen Halbkugel geboren wurden von denen auf
MehrTheoretische Informatik SS 04 Übung 1
Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die
MehrProgrammieren I. Kapitel 7. Sortieren und Suchen
Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren
MehrAlgorithmen und Datenstrukturen. Kapitel 4: Suchverfahren. Skript zur Vorlesung. Algorithmen und Datenstrukturen
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Algorithmen und Datenstrukturen Kapitel 4: Suchverfahren Skript zur Vorlesung Algorithmen und Datenstrukturen Sommersemester
Mehr13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.
13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. Sie heißt linear, wenn sie die Form y (n) + a n 1 y (n 1)
MehrKapitel 5: Dynamisches Programmieren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrRente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen
5.2. entenrechnung Definition: ente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren entenperiode = Zeitabstand zwischen zwei entenzahlungen Finanzmathematisch sind zwei
MehrSuche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20
Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:
MehrTutorium Algorithmen & Datenstrukturen
June 16, 2010 Binärer Baum Binärer Baum enthält keine Knoten (NIL) besteht aus drei disjunkten Knotenmengen: einem Wurzelknoten, einem binären Baum als linken Unterbaum und einem binären Baum als rechten
MehrSortierte Folgen 250
Sortierte Folgen 250 Sortierte Folgen: he 1,...,e n i mit e 1 apple applee n kennzeichnende Funktion: M.locate(k):= addressof min{e 2 M : e k} Navigations Datenstruktur 2 3 5 7 11 13 17 19 00 Annahme:
MehrEntscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrSuchen und Sortieren
(Folie 69, Seite 36 im Skript) 5 6 1 4 Als assoziatives Array geeignet Schlüssel aus geordneter Menge Linke Kinder kleiner, rechte Kinder größer als Elternknoten Externe und interne Knoten Externe Knoten
MehrAVL-Bäume. (Algorithmen und Datenstrukturen I) Prof. Dr. Oliver Braun. Letzte Änderung: :16. AVL-Bäume 1/38
AVL-Bäume (Algorithmen und Datenstrukturen I) Prof. Dr. Oliver Braun Letzte Änderung: 18.03.2018 18:16 AVL-Bäume 1/38 Balancierte Bäume in einem zufällig erzeugten Binärbaum haben die Algorithmen Suchen,
MehrAnwendungsbeispiele Buchhaltung
Rechnungen erstellen mit Webling Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Rechnungen erstellen mit Webling 1.1 Rechnung erstellen und ausdrucken 1.2 Rechnung mit Einzahlungsschein erstellen
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
MehrAlgorithmen und Datenstrukturen I AVL-Bäume
Algorithmen und Datenstrukturen I AVL-Bäume Prof. Dr. Oliver Braun Letzte Änderung: 01.12.2017 14:42 Algorithmen und Datenstrukturen I, AVL-Bäume 1/38 Balancierte Bäume in einem zufällig erzeugten Binärbaum
Mehr6. Binäre Suchbäume. Binäre Suchbäume
6. Binäre Sucbäume Natürlice binäre Sucbäume - Begriffe und Definitionen - Grundoperationen: Einfügen, sequentielle Suce, direkte Suce, öscen - Bestimmung der mittleren Zugriffskosten Balancierte Binärbäume
MehrRente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen
1 3.2. entenrechnung Definition: ente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren entenperiode = Zeitabstand zwischen zwei entenzahlungen Finanzmathematisch sind
MehrMit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
MehrBinäre Suchbäume. 6. Binäre Suchbäume. Einfügen in binären Suchbäumen
6. Binäre Sucbäume Natürlice binäre Sucbäume - Begriffe und Definitionen - Grundoperationen: Einfügen, sequentielle Suce, direkte Suce, öscen - Bestimmung der mittleren Zugriffskosten Balancierte Binärbäume
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
MehrDAP2-Klausur 07.08.2004
DAP2-Klausur 07.08.2004 Vorname : Familienname: Ich studiere (Bitte markieren): Informatik/Inform. Lehramt/Inf.technik/Physik/ Mathe/Statistik/Sonstiges: Bitte beachten: Auf jedem Blatt Matrikelnummer
MehrTheoretische Grundlagen der Informatik WS 09/10
Theoretische Grundlagen der Informatik WS 09/10 - Tutorium 6 - Michael Kirsten und Kai Wallisch Sitzung 13 02.02.2010 Inhaltsverzeichnis 1 Formeln zur Berechnung Aufgabe 1 2 Hamming-Distanz Aufgabe 2 3
MehrEinfügen von Bildern innerhalb eines Beitrages
Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de
MehrGrundlagen der Informatik
Mag. Christian Gürtler Programmierung Grundlagen der Informatik 2011 Inhaltsverzeichnis I. Allgemeines 3 1. Zahlensysteme 4 1.1. ganze Zahlen...................................... 4 1.1.1. Umrechnungen.................................
MehrAnwendungsbeispiel MinHeap
Anwendungsbeispiel MinHeap Uns seien n ganze Zahlen gegeben und wir möchten darin die k größten Zahlen bestimmen; zudem gelten, dass n deutlich größer als k ist Wir können das Problem mit Laufzeit in O(n
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrSimplex-Umformung für Dummies
Simplex-Umformung für Dummies Enthält die Zielfunktion einen negativen Koeffizienten? NEIN Optimale Lösung bereits gefunden JA Finde die Optimale Lösung mit dem Simplex-Verfahren! Wähle die Spalte mit
MehrEine Logikschaltung zur Addition zweier Zahlen
Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung
MehrKapitel 3 Frames Seite 1
Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den
Mehrecaros2 - Accountmanager
ecaros2 - Accountmanager procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Aufruf des ecaros2-accountmanager...3 2 Bedienung Accountmanager...4 procar informatik AG 2 Stand: FS 09/2012 1 Aufruf
MehrIn vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut.
Binäre Suchbäume Tries (Folie 182, Seite 58 im Skript) In vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut. In Tries entspricht die ite Verzweigung dem iten Zeichen des Schlüssels.
MehrAntolin-Titel jetzt automatisch in WinBIAP kennzeichnen
& Antolin-Titel jetzt automatisch in WinBIAP kennzeichnen Immer mehr Schulen setzen das erfolgreiche Leseförderungsprojekt "Antolin" ein - und die Bibliotheken verzeichnen große Nachfrage nach den Kinderbüchern,
MehrCodes und Informationsgehalt
Aufgaben 2 Codes und Informationsgehalt Auf wie viele Dezimalziffern genau können vorzeichenlose ganze Zahlen in einem binären Code der Länge 32 bit dargestellt werden? 2 Codes und Informationsgehalt Auf
MehrEin + vor dem Ordnernamen zeigt an, dass der Ordner weitere Unterordner enthält. Diese lassen sich mit einem Klick (linke Maustaste) anzeigen.
Ordner erstellen, Bilder ordnen Um neue Ordner zu erstellen und Bilddateien zu ordnen, bietet es sich an, sich zunächst die Hierarchie der bereits vorhandenen Ordner anzuschauen. Mit einem Klick auf Ordner
Mehr0, v 6 = 2 2. 1, v 4 = 1. 2. span(v 1, v 5, v 6 ) = span(v 1, v 2, v 3, v 4, v 5, v 6 ) 4. span(v 1, v 2, v 4 ) = span(v 2, v 3, v 5, v 6 )
Aufgabe 65. Ganz schön span(n)end. Gegeben sei folgende Menge M von 6 Vektoren v, v,..., v 6 R 4 aus Aufgabe P 6: M = v =, v =, v =, v 4 =, v 5 =, v 6 = Welche der folgenden Aussagen sind wahr? span(v,
MehrMöglichkeiten des Parallelbetriebs der VR-NetWorld Software Parallelbetrieb VR-NetWorld Software 4.4x und Version 5.0 ab der 2. Beta!
Möglichkeiten des Parallelbetriebs der VR-NetWorld Software Um mehrere Versionsstände parallel betreiben zu können, sollte man die folgenden Hintergründe kennen, um zu verstehen wo ggf. die Hürden liegen.
Mehr