9.4 Binäre Suchbäume. Xiaoyi Jiang Informatik II Datenstrukturen und Algorithmen
|
|
- Christa Schulz
- vor 8 Jahren
- Abrufe
Transkript
1 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 schon vorhanden ist) Erweiterung: Der eingefügte Schlüssel kann durch sog. Rotationen sukzessiv in Richtung Wurzel verschoben werden (Verbesserung der Baumstruktur) Allgemeines Schema: rekursive Formulierung 43
2 9.4 Binäre Suchbäume Beispiel: Einfügen des Schlüssels G (iterativ; die rekursive Version tut genau dasselbe) 44
3 9.4 Binäre Suchbäume Rotationen: Damit kann man Knoten im Baum verschieben, ohne die Suchbaumeigenschaft des Baumes zu verletzen. Eine lokale Umstrukturierung in einem Binärbaum, an der zwei Schlüssel und drei Teilbäume beteiligt sind. Links- und Rechtsrotation Rotation lässt die Struktur der Teilbäume A, B und C unverändert, ändert aber die Tiefe der Knoten in Teilbäumen A und C 45
4 9.4 Binäre Suchbäume Beispiel: Konstruktion eines binären Suchbaums mit A, S, E, R, C, H, I, N, G, X, M, P, L durch Einfügen an der Wurzel 46
5 9.4 Binäre Suchbäume Vorteil: Zuletzt eingefügte Schlüssel sind in der Nähe der Spitze. Für diese Schlüssel ist der Suchaufwand kleiner als mit dem Standardverfahren. Selbstorganisierender Suchalgorithmus: ordnet Elemente neu an, damit sich häufig angesprochene Elemente mit höherer Wahrscheinlichkeit bereits früh in einer Suchoperation finden lassen Realisierung durch Erweiterung der Suchmethode, um den gefundenen Knoten mithilfe von Rotationen zur Wurzel zu bringen 47
6 9.4 Binäre Suchbäume Weitere Suchbaum-Operationen: Auswahl: des k-kleinsten Elementes (Minimum: k=1). In jedem Knoten einen Zähler size für die Anzahl der Schlüssel vorzusehen, die in dem von diesem Knoten ausgehenden Teilbaum gespeichert sind. Alle Methoden, die den Zustand des Baumes ändern, müssen diesen Zähler aktualisieren. BSTNode<E> select(bstnode<e> t, int k) { if (t == null) return null; int i = (t.left == null)? 0 : node.left.size; if (i >= k) return select(t.left, k); else if (i < k) return select(t.right, k-i); return t.element; } Aufruf: select(root, k); 48
7 9.4 Binäre Suchbäume Zerlegen: Eng verwandt mit Auswählen ist das Zerlegen bezüglich einer Position k. Für k = size/2 kann man damit eine geordnete Menge in linke und rechte Hälfte aufteilen. Man bringt durch mehrfaches Rotieren das Element mit Index k an die Wurzel. Dann enthält der linke Teilbaum die Elemente mit den Indizes 0,..., k 1, der rechte die mit den Indizes k + 1,..., size 1. Die Laufzeit für Auswählen und Zerlegen ist im schlechtesten Fall von der Ordnung O(h) (h = Höhe das Suchbaums), weil immer ein Suchpfad durchlaufen wird. Im Mittel ist h O(log n), eine Garantie für logarithmische Laufzeit haben wir noch nicht. 49
8 9.4 Binäre Suchbäume Beispiel: Baum der Größe size = 9. Element M wird an die Wurzel gebracht. Anschließend enthält der linke Teilbaum Elemente, die kleiner als M sind. 50
9 9.4 Binäre Suchbäume Vereinigung von Suchbäumen: Seien a und b die beiden Bäume a.max < b.min Besonders effizient: Der Schlüssel a.max wird an die Wurzel von a rotiert, mit der Folge, dass a.right leer ist. Dann setzt man a.right = b. Wenn a logarithmische Höhe hat, braucht das O(log n) Zeit. Schlüssel in a und b sind beliebig Dann muss man einen der beiden Bäume traversieren und seine Elemente in den anderen Baum einfügen. Keine lineare Zeit, da jedes Einfügen lineare Zeit beanspruchen kann. 51
10 9.4 Binäre Suchbäume Rekursive Implementierung der Vereingung: Zuerst fügen wir die Wurzel w von a in den Baum b ein (durch Einfügen an der Wurzel) Zwei Teilbäume (a.left und b.left) mit Schlüssseln < w und zwei Teilbäume (a.right und b.right) mit Schlüsseln > w. Eine rekursive Anwendung am ersten (zweiten) Paar liefert den linken (rechten) Teilbaum der Wurzel w. BSTNode<E> joinr(bstnode<e> a, BSTNode<E> b) { if (a == null) return b; if (b == null) return a; insert(a.element, b); // Einfügen an der Wurzel b.left = joinr(a.left, b.left); r.right = joinr(a.right, b.right) return b; } 52
11 9.4 Binäre Suchbäume Beispiel: Zwei Bäume zur Vereinigung (oben); nach Einfügung der Wurzel w = G in den anderen Baum (Mitte); Vereinigung (unten) 53
12 9.5 Balancierte Bäume Mit binären Suchbäumen kann man eine Vielzahl von Anwendungen mit einer Laufzeit realisieren, die von der Höhe der beteiligten Bäume abhängt. Man möchte, dass diese Höhe garantiert logarithmisch ist. Daten sind meistens nicht zufällig verteilt, sondern teilweise geordnet mit langen Läufen monoton aufsteigender (absteigender) Elemente Degenerierung binärer Suchbäume in lineare Listen Idee: Überwache Struktur eines binären Suchbaums und restrukturiere ihn, falls er zu sehr degeneriert Idealfall eines ausgeglichenen Binärbaums hat man, wenn alle Ebenen bis auf die untersten ein bis drei Ebenen voll besetzt sind 54
13 9.5 Balancierte Bäume Es gibt zahlreiche Verfahren, mit denen man einen binären Suchbaum ausgleichen kann. Eine einfache Methode: Bringe den Median an die Wurzel und wiederhole dasselbe rekursiv für die Teilbäume. Laufzeit T(n) = n + 2T(n/2) O(n log n) (vgl. Mergesort) Diese Art des vollständigen Balancierens eines Suchbaums ist nur sinnvoll in Situationen, in denen der Baum wenig geändert wird. Durch weitere Einfüge und Entferne Operationen geht die Balance meistens schnell wieder verloren. 55
14 9.5 Balancierte Bäume Klasse B von Suchbäumen muss die folgenden beiden Bedingungen erfüllen, um praktisch nützlich zu sein Ausgewogenheitsbedingung: c > 0 T B : h T c log 2 n T h T : Höhe, n T : Anzahl Knoten eines Baumes T Restrukturierungsbedingung: Fällt ein Baum T B nach einer Einfüge- oder Löschoperation aus der Klasse B heraus, so muss es möglich sein, T mit Aufwand O(log n T ) so zu restrukturieren, dass er wieder zu B gehört Erfüllt eine Klasse B von Bäumen die Ausgewogenheitsbedingung und die Restrukturierungsbedingung, so lassen sich die Such-, Einfüge- und Löschoperation mit Aufwand O(log n) durchführen 56
15 9.5 Balancierte Bäume Klasse der fast vollständigen binären Bäume erfüllt die Ausgewogenheitsbedingung, aber nicht die Restrukturierungsbedingung, da im schlimmsten Fall O(n) Zeit benötigt wird, um solch einen binären Suchbaum zu restrukturieren C E G O(n) B D F B D F A C E G A 57
16 Die historisch erste Klasse dynamischer balancierbarer Bäume waren die AVL Bäume (1962 von G. M. Adelson Velskii und J. M. Landis eingeführt) AVL Eigenschaft eines Binärbaums: Für jeden Knoten darf sich die Höhe seiner beiden Teilbäume höchstens um 1 unterscheiden höhenbalancierter binärer Suchbaum Durch Rotationen wird unmittelbar nach jedem Einfügen und Entfernen diese Bedingung in logarithmischer Zeit wiederhergestellt Es gilt: Die Klasse der AVL Bäume erfüllt die Balanciertheitsbedingung mit h n log 2 n. Zugriffe auf AVL Bäume sind also höchstens um 44% langsamer als Zugriffe auf optimal ausbalancierte Bäume. Diese Abschätzung ist meistens viel zu pessimistisch. In der Praxis stellt man fest, dass zufällig erzeugte AVL Bäume Höhen h n log 2 n haben. 58
17 Beispiel: höhenbalancierte binäre Bäume Nicht höhenbalancierter Baum; der markierte Knoten verletzt die Höhenbedingung 59
18 Knoten t eines AVL-Baumes erfüllt genau eine der folgenden Ausgewogenheitseigenschaften: / linkslastig, wenn die Höhe des linken Teilbaums von t um 1 größer ist als die Höhe des rechten Teilbaums; - ausgeglichen, wenn beide Teilbäume von t gleiche Höhe haben; \ rechtslastig, wenn die Höhe des rechten Teilbaums von t um 1 größer ist als die Höhe des linken Teilbaums. 60
19 Einfügen: Beim Einfügen von x in einen AVL Baum wird der neue Knoten wie beim natürlichen Suchbaum eingefügt, dann wird rebalanciert. Das unbalancierte Einfügen kann also nur bei Knoten auf dem Suchpfad für x die AVL Bedingung verletzen Beim Rebalancieren wird der Suchpfad rückwärts durchlaufen. Bei jeder AVL-Verletzung wird eine lokale Restrukturierungsoperation durchgeführt, um in diesem Teilbaum die AVL-Bedingung wieder herzustellen. Lokale Restrukturierungsoperationen Rotation und Doppelrotation ermöglichen die Restrukturierung eines durch eine Einfügeoperation gestörten zuvor höhenbalancierten Baumes, indem sie ihn in Teilbäume zerlegen und auf neue Art wieder zusammenfügen 61
20 Die Höhenbedingung ist im roten Knoten verletzt a Rotation b 2 1 X Y b X a Y Z Z a Doppelrotation b c a c 2 1 W X b Z W Y Z X Y Analog spiegelbildliche Transformationen 62
21 Einfügen eines neuen Elementes erfolgt wie beim binären Suchbaum, der neue Knoten erhält die Ausgewogenheitseigenschaft. Dann beginne ausgehend vom neuen Knoten in Richtung Wurzel aufzusteigen und verbreite die Nachricht, dass der zum gegenwärtigen Knoten gehörende Teilbaum in der Höhe um 1 gewachsen ist. In jedem Knoten entlang dieses Weges wird entsprechend einer der folgenden Regeln I1, I2 und I3 eine Operation durchgeführt. 63
22 Regel I1: Knoten hat Ausgewogenheitseigenschaft und wird von seinem linken (bzw. rechten) Kind aus betreten ändere Ausgewogenheitseigenschaft zu / (bzw. \) Knoten = Wurzel breche Aufstieg ab Knoten Wurzel setzeaufstiegfort Regel I2: Knoten hat Ausgewogenheitseigenschaft / oder \ und wird vom zuvor kürzeren Teilbaum aus betreten ändere Ausgewogenheitseigenschaft zu und breche Aufstieg ab, da Höhe des Teilbaums sich nicht geändert hat 64
23 Regel I3: Knoten hat Ausgewogenheitseigenschaft / oder \ und wird vom zuvor schon längeren Teilbaum aus betreten Höhenbedingung im gegenwärtigen Knoten ist verletzt und wird folgendermaßen wiederhergestellt: (a) Erfolgten die letzten zwei Schritte aus der gleichen Richtung (beide von linken Kindern oder beide von rechten Kindern) Rotation (b) Erfolgten die letzten zwei Schritte aus unterschiedlichen Richtungen (einer vom linken Kind, einer vom rechten Kind) Doppelrotation In beiden Fällen ändert sich Höhe des Teilbaums nicht breche Aufstieg ab 65
24 Beispiel: Einfügen von 1, 2, 5, 3, 4, 6, 7 in einen initial leeren AVL-Baum 1 insert 2 1 insert 5 1 Rotation insert
25 insert 4 2 Doppelrotation insert Rotation
26 insert Rotation Insgesamt wird nach dem Einfügen höchstens eine Rotation oder Doppelrotation durchgeführt Aufwand für Einfügen wird bestimmt durch den Abstieg zur Einfügeposition und den Aufstieg, im schlimmsten Fall bis zur Wurzel Aufwand für Einfügen ist im schlimmsten Fall O(h), d.h. O(log n) 68
27 Entfernen: Ein Schlüssel x wird wie bei natürlichen Suchbäumen entfernt (entweder direkt entfernt oder durch seinen Inorder Nachfolger y ersetzt; siehe die Illustration auf der nächsten Folie) Dann beginne ausgehend vom Elternknoten von x oder y zur Wurzel aufzusteigen und verbreite die Nachricht, dass der zum gegenwärtigen Knoten gehörende Teilbaum in der Höhe um 1 geschrumpft ist. In jedem Knoten entlang dieses Wegs wird entsprechend einer der folgenden Regeln eine Operation durchgeführt. 69
28 9.4 Binäre Suchbäume Spezialfälle beim Entfernen in binären Suchbäumen: x ist in einem Knoten k enthalten, der keine Kinder hat: k wird gelöscht von Elternknoten von x=13, 12, zur Wurzel aufsteigen x ist in einem Knoten k enthalten, der ein Kind hat: k wird durch das Kind ersetzt von Elternknoten von x=16, 15, zur Wurzel aufsteigen 70
29 9.4 Binäre Suchbäume x ist in einem Knoten k enthalten, der zwei Kinder hat: Dann bleibt Knoten k erhalten. Das Element x in k wird ersetzt durch das größte Element im linken Teilbaum oder das kleinste Element im rechten Teilbaum von k. Jedes dieser beiden Elemente ist in einem Knoten gespeichert, der höchstens ein Kind besitzt und daher wie in Fall 1 oder 2 entfernt werden kann. von Elternknoten von y=6, 10, zur Wurzel aufsteigen 71
30 Regel D1: Knoten hat Ausgewogenheitseigenschaft und wird von seinem linken (bzw. rechten) Kind aus betreten ändere Ausgewogenheitseigenschaft zu \ (bzw. /) und breche Aufstieg ab, da die Höhe des Teilbaums sich nicht geändert hat Regel D2: Knoten hat Ausgewogenheitseigenschaft / oder \ und wird vom zuvor längeren Teilbaum aus betreten ändere Ausgewogenheitseigenschaft zu und setze Aufstieg fort 72
31 Regel D3: Knoten hat Ausgewogenheitseigenschaft / oder \ und wird vom zuvor schon kürzeren Teilbaum aus betreten Höhenbedingung des gegenwärtigen Knotens b ist verletzt und wird abhängig von der Ausgewogenheitseigenschaft des anderen Kindes a von b folgendermaßen wiederhergestellt: (a) Rotation b a a b Z Z X X Y Y Eine Rotation sorgt für die Einhaltung der Höhenbedingung am gegenwärtigen Knoten, ohne die Höhe des Teilbaums zu verändern breche Aufstieg ab 73
32 (b) X a Y b Z Rotation X a Y b Z Eine geeignete Rotation sorgt für die Einhaltung der Höhenbedingung am gegenwärtigen Knoten setzeaufstiegfort 74
33 (c) W a X c b Y Z Doppelrotation W a X c Y b Z Eine Doppelrotation sorgt für die Einhaltung der Höhenbedingung am gegenwärtigen Knoten setze Aufstieg fort Ähnliche Transformationen, falls X oder Y, aber nicht beide zugleich, um eine Stufe kürzer sind als in obiger Figur gezeigt Modifikation der Ausgewogenheitseigenschaft einiger Knote kein Einfluß auf die Höhe des Teilbaums Betrachte ebenso Spiegelbilder in (a), (b), (c)! 75
34 Im Gegensatz zum Einfügen kann beim Löschen mehr als eine Rotation oder Doppelrotation notwendig sein! Aufwand für eine Rotation oder Doppelrotation ist konstant, d.h. O(1) Kosten für Rebalancierung nur abhängig von der Höhe des Baumes Aufwand für Löschoperation ist im schlimmsten Fall O(log n) 76
35 delete Regel D
36 Regel D3 (c): Doppelrotation Regel D3 (b): Rotation
37 Beispiel: Ein natürlicher Suchbaum mit 200 zufälligen Schlüsseln 79
38 AVL-Baum mit denselben Schlüsseln: 80
39 Beispiel: Ein natürlicher Suchbaum mit Bias, 400 zufällige Schlüssel 81
40 AVL-Baum mit denselben Schlüsseln: 82
41 Ein schiefster höhenbalancierter binärer Baum T h ist ein höhenbalancierter binärer Baum der Höhe h mit einer minimalen Anzahl Knoten. Ausgehend von T 0 und T 1 erhält man T h, indem man T h 1 und T h 2 als Teilbäume an einen neuen Wurzelknoten anfügt: h = 0 h = 1 h = 2 h = 3 h = 4 Anzahl n h der Knoten in einem schiefsten höhenbalancierten binären Baum der Höhe h: n 0 = 1, n 1 = 2 n h = n h 2 + n h
42 Es gilt: Im schlimmsten Fall beträgt die Höhe eines AVL-Baums mit n Knoten etwa 1.44 log 2 n 84
43 Aufwand für die Einfüge- und Löschoperation ist im schlimmsten Fall O(log n) Klasse der AVL-Bäume erfüllt die Restrukturierungsbedingung AVL-Bäume mit ihren kleinen Knoten, die gewöhnlich ein einziges Datenelement enthalten, werden primär für die Verwaltung von Daten im Hauptspeicher eingesetzt G. M. Adelson-Velskii und Y. M. Landis: An algorithm for the organization of information, Soviet Mathematics Doklady 3, (1962) Ein schönes Java-Applet mit Animation: 85
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
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
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
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
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
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
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
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
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
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
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
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),
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,...
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
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
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:
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
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)
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
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
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:
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
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.
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
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
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
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
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
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
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
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)
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
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
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
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
MehrOutlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang
sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche
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
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
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
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 - Balancierte Bäume, AVL-Bäume) Prof. Dr. Susanne Albers Balancierte Bäume Eine Klasse von binären Suchbäumen ist balanciert, wenn jede der drei
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
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
MehrErstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
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
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
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
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)
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
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
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:
Mehr3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36
MehrSortierverfahren für Felder (Listen)
Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es
MehrNavigieren auf dem Desktop
Navigieren auf dem Desktop Sie kennen Windows 7 noch nicht? Obwohl Windows 7 viel mit den Versionen von Windows gemein hat, die Ihnen ggf. bereits vertraut sind, werden Sie möglicherweise an der einen
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
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
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.
MehrGrundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen
Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in
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
Mehriloq Privus Bedienungsanleitung Schließanlagen Programmierung Version 1 - Copyright 2013
iloq Privus Schließanlagen Programmierung Version 1 - Copyright 2013 Kurth Electronic GmbH Kommunikations- & Sicherheitssysteme / Im Scherbental 5 / 72800 Eningen u. A. Tel: +49-7121-9755-0 / Fax: +49-7121-9755-56
MehrZwischenablage (Bilder, Texte,...)
Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen
MehrBenutzerhandbuch - Elterliche Kontrolle
Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü
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
MehrTangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:
Tangentengleichung Wie Sie wissen, gibt die erste Ableitung einer Funktion deren Steigung an. Betrachtet man eine fest vorgegebene Stelle, gibt f ( ) also die Steigung der Kurve und somit auch die Steigung
MehrWas meinen die Leute eigentlich mit: Grexit?
Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?
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
MehrEinfache binäre Suchbäume können entarten, so dass sich die Tiefen ihrer Blattknoten stark unterscheiden
5.6.2 AVL-Bäume Einfache binäre Suchbäume können entarten, so dass sich die Tiefen ihrer Blattknoten stark unterscheiden AVL-Bäume, benannt nach ihren Erfindern G. M. Adelson- Velskii und E. M. Landis,
Mehrerster Hauptsatz der Thermodynamik,
1.2 Erster Hautsatz der hermodynamik Wir betrachten ein thermodynamisches System, dem wir eine beliebige Wärmemenge δq zuführen, und an dem wir eine Arbeit da leisten wollen. Werden umgekehrt dem System
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
MehrGrundlagen der Theoretischen Informatik, SoSe 2008
1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)
MehrWindows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1
Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen
MehrSage Start Einrichten des Kontenplans Anleitung. Ab Version 2015 09.10.2014
Sage Start Einrichten des Kontenplans Anleitung Ab Version 2015 09.10.2014 Inhaltsverzeichnis Inhaltsverzeichnis 2 1.0 Einleitung 3 2.0 Bearbeiten des Kontenplans 4 2.1 Löschen von Gruppen/Konten 4 2.2
MehrName:... Vorname:... Matrikel-Nr.:... Unterschrift:...
Studiengang Bachelor of Computer Science Modulprüfung Praktische Informatik 1 Wintersemester 2010 / 2011 Name:... Vorname:... Matrikel-Nr.:... Unterschrift:... Hinweise: 1.) Schreiben Sie Ihren Namen und
MehrNeuanlage des Bankzugangs ohne das bestehende Konto zu löschen
1 Neuanlage des Bankzugangs ohne das bestehende Konto zu löschen In moneyplex lässt sich ein Konto und ein Bankzugang nur einmal anlegen. Wenn sich der Bankzugang geändert hat oder das Sicherheitsmedium
MehrFachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
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
MehrLeichte-Sprache-Bilder
Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen
MehrWie halte ich Ordnung auf meiner Festplatte?
Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,
Mehr1. Einschränkung für Mac-User ohne Office 365. 2. Dokumente hochladen, teilen und bearbeiten
1. Einschränkung für Mac-User ohne Office 365 Mac-User ohne Office 365 müssen die Dateien herunterladen; sie können die Dateien nicht direkt öffnen und bearbeiten. Wenn die Datei heruntergeladen wurde,
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,
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)
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
MehrKulturelle Evolution 12
3.3 Kulturelle Evolution Kulturelle Evolution Kulturelle Evolution 12 Seit die Menschen Erfindungen machen wie z.b. das Rad oder den Pflug, haben sie sich im Körperbau kaum mehr verändert. Dafür war einfach
MehrBackup Premium Kurzleitfaden
Info Memeo Backup Premium bietet viele fortschrittliche automatische Backup-Funktionen und ist großartig für Benutzer von Digitalkameras und für Anwender, die bis zu 50.000 Dateien mit Backups sichern
MehrJeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint
Bilingual konkret Jeopardy and andere Quizformate im bilingualen Sachfachunterricht Tipps zur Erstellung mit Powerpoint Moderner Unterricht ist ohne die Unterstützung durch Computer und das Internet fast
MehrErweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:
VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt
MehrWas ist das Budget für Arbeit?
1 Was ist das Budget für Arbeit? Das Budget für Arbeit ist ein Persönliches Geld für Arbeit wenn Sie arbeiten möchten aber nicht mehr in einer Werkstatt. Das gibt es bisher nur in Nieder-Sachsen. Und in
MehrInformationsblatt Induktionsbeweis
Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln
MehrUnterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis
Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis Das komplette Material finden Sie hier: Download bei School-Scout.de
MehrDatenaufbereitung in SPSS. Daten zusammenfügen
Daten zusammenfügen I. Fälle hinzufügen Diese Schritte müssen Sie unternehmen, wenn die Daten in unterschiedlichen Dateien sind; wenn also die Daten von unterschiedlichen Personen in unterschiedlichen
MehrSANDBOXIE konfigurieren
SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:
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
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
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
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
MehrEinführung in die Algebra
Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv
MehrAnleitung Postfachsystem Inhalt
Anleitung Postfachsystem Inhalt 1 Allgemeines... 2 2 Einloggen... 2 3 Prüfen auf neue Nachrichten... 2 4 Lesen von neuen Nachrichten... 3 5 Antworten auf Nachrichten... 4 6 Löschen von Nachrichten... 4
MehrPrint2CAD 2017, 8th Generation. Netzwerkversionen
Installation der Netzwerkversion Kazmierczak Software Print2CAD 2017, 8th Generation Print2CAD 2017, 8th Generation Netzwerkversionen Einführung Installationshinweise Die Programme von Kazmierczak Software
MehrKurs 1613 Einführung in die imperative Programmierung
Aufgabe 1 Gegeben sei die Prozedur BubbleSort: procedure BubbleSort(var iofeld:tfeld); { var hilf:integer; i:tindex; j:tindex; vertauscht:boolean; i:=1; repeat vertauscht := false; for j := 1 to N - i
MehrInfo zum Zusammenhang von Auflösung und Genauigkeit
Da es oft Nachfragen und Verständnisprobleme mit den oben genannten Begriffen gibt, möchten wir hier versuchen etwas Licht ins Dunkel zu bringen. Nehmen wir mal an, Sie haben ein Stück Wasserrohr mit der
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
Mehr