Algorithmen und Datenstrukturen SS09

Größe: px
Ab Seite anzeigen:

Download "Algorithmen und Datenstrukturen SS09"

Transkript

1 Foliensatz 8 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 29 TU Ilmenau Seite / 54 Binärbäume TU Ilmenau Seite 2 / 54

2 Binäre Bäume Bäume und speziell Binärbäume sind ein sehr wichtiges und grundlegendes Konzept in der Informatik. Sie treten in vielen Anwendungen und Zusammenhängen auf: Binäre Suchbäume Repräsentation von arithmetischen und logischen Ausdrücken (allgemeine Bäume) Entscheidungsbäume Codierungs-/Decodierungsbaum... TU Ilmenau Seite 3 / 54 Anwendungen von Binärbäumen Beispiel (Arithmetischer Ausdruck mit zweistelligen Operatoren) ((((x 2 x 4 ) + ((x 3 x 7 ) (x 6 /x ))) + (x 5 (x 9 x 3 )))/((x 5 x 6 ) x )). / + + x x 5 x 5 x 6 x 2 x 4 / x 9 x 3 x 3 x 7 x 6 x TU Ilmenau Seite 4 / 54

3 Anwendungen von Binärbäumen Beispiel (Arithmetischer Ausdruck mit zweistelligen Operatoren) Auswertung geschieht bottom-up, d.h. beginnend in den Blättern. x = 5, x 2 = 3, x 3 = 2, x 4 = 7, x 5 = 7, x 6 =, x 7 = 5, x 9 = 5. / + + x x 5 x 5 x 6 x 2 x 4 / x 9 x 3 x 3 x 7 x 6 x / TU Ilmenau Seite 5 / Anwendungen von Binärbäumen -3 5 Beispiel (Codierungs-Decodierungsbaum) Die Zeichen aus einem Alphabet Σ erhalten binäre Codes (unter Umständen verschiedener Länge). A B C D E F G H I K Um eine Zeichenreihe zu codieren, benutzt man die Tabelle: F E I G E hat die Codierung Besonders wichtig sind präfixfreie Codes, bei denen kein Codewort Anfangsstück (Präfix) eines anderen Codewortes ist. Solche Codes erlauben eine eindeutige Decodierung ohne die Verwendung von Leerzeichen. TU Ilmenau Seite 6 / 54

4 Anwendungen von Binärbäumen Beispiel (Codierungs-Decodierungsbaum) A B C D E F G H I K Der Code legt den Weg im Baum zum Buchstaben fest: links, rechts. E C G D H F B I A K TU Ilmenau Seite 7 / 54 Anwendungen von Binärbäumen Beispiel (Codierungs-Decodierungsbaum) Decodierung folgt einfach dem durch die Bitfolge vorgegebenen Weg bis zum Blatt. E C G D H F B I A K FEIGE TU Ilmenau Seite 8 / 54

5 Die Terminologie von Binärbäumen v Wurzel Kante v 2 v 4 Vorgänger von v 5 linker Nachfolger von v 2 v 3 v 5 v 6 rechter Nachfolger von v 4 Blatt TU Ilmenau Seite 9 / 54 Eine Definition von Binärbäumen Definition (Binärbaum) Ein Binärbaum T besteht aus einer endlichen Menge V von inneren Knoten einer endlichen Menge L von äußeren Knoten (oder Blättern) sowie zwei Funktionen leftchild : V V L und rightchild : V V L. Dabei gelten die folgenden Bedingungen: In V L gibt es genau einen Knoten r, der nicht als Wert von leftchild und rightchild vorkommt. Dieser Knoten heisst Wurzel. 2 Für jeden Knoten w (V L) \ {r} gibt es genau einen Knoten u V so dass entweder w = leftchild(u) oder w = rightchild(u). Dieser Knoten wird mit p(w) bezeichnet und Vorgänger oder Vater von w genannt. TU Ilmenau Seite / 54

6 Eine Definition von Binärbäumen Definition (Binärbaum Fortsetzung) 4 Für jedes w V L gilt: Die Folge v = w, v = p(w), v 2 = p(v ), v 3 = p(v 2 ),... bricht nach endlich vielen Schritten mit einem v d = r ab. Diese Eigenschaft heisst Kreisfreiheit. Beachte: Jeder innere Knoten hat genau zwei Nachfolger. In vielen Fällen existieren zwei Mengen D und Z, so dass jedem inneren Knoten v V ein Wert data V (v) D und jedem äußeren Knoren l L ein Wert data L (l) Z zugewiesen wird. D.h. man hat zusätzlich zwei Abbildungen data V : V D und data L : L Z. In einem solchen Fall sprechen wir von (D, Z)-Binärbäumen. TU Ilmenau Seite / 54 Terminologie Binärbaum, engl: binary tree (innerer) Knoten v, engl: node Knoteneintrag: x = data(v) = data(t ) (v Wurzel von T ) x v TU Ilmenau Seite 2 / 54

7 Terminologie T v : Unterbaum mit Wurzel v x v T v TU Ilmenau Seite 3 / 54 Terminologie (äußerer) Knoten Blatt l, engl: leaf, Pl. leaves Blatteintrag: z = data(l) Wurzel, engl: root z l TU Ilmenau Seite 4 / 54

8 Terminologie Vater (unmittelbarer) Vorgänger, engl: parent, von v: p(v) linkes Kind (unmittelbarer) Nachfolger, Sohn, engl: left child, von v: leftchild(v) rechtes Kind (unmittelbarer) Nachfolger, Sohn, engl: right child, von v: rightchild(v) TU Ilmenau Seite 5 / 54 Terminologie Weg in T: Knotenfolge oder Kantenfolge, die von v zu einem Nachfahren u führt Länge eines Wegs (v, v,..., v s ): Anzahl s der Kanten auf dem Weg v Weg der Länge 3 von v nach u u TU Ilmenau Seite 6 / 54

9 Terminologie Vorfahr (Vater von Vater von Vater... von v), engl: ancestor (Im Bild: v ist Vorfahr von u.) Nachfahr (Kind von Kind von...von v), engl: descendant (Im Bild: u ist Nachfahr von v.) Achtung: Oft gilt v als (uneigentlicher) Vorfahr/Nachfahr von v. v u TU Ilmenau Seite 7 / 54 Ein häufiger Spezialfall Die externen Knoten haben keinen Eintrag. (Bzw. jeder hat denselben nichtssagenden Eintrag, z.b..) "Blätter" Ein solcher externer Knoten wird auch als leerer Baum bezeichnet. Oft bezeichnet man dann die inneren Knoten, die keinen inneren Knoten als Nachfolger haben, als Blätter. TU Ilmenau Seite 8 / 54

10 Ein häufiger Spezialfall Beobachtung Durch die Verwendung leerer externer Knoten ist es möglich jeden gerichteten Baum, in dem jeder Knoten keinen, einen oder zwei Nachfolger hat, als Binärbaum aufzufassen. Man fügt einfach zu jedem Knoten mit keinem oder einem Nachfolger leere Blätter hinzu. TU Ilmenau Seite 9 / 54 Die Signatur von Binärbäumen mit leeren externen Knoten Die Signatur BinaryTree Sorten: Operationen: Elements BinaryTree Boolean empty: BinaryTree compose: Elements BinaryTree BinaryTree BinaryTree leftsubtree: BinaryTree BinaryTree rightsubtree: BinaryTree BinaryTree data: BinaryTree Elements isempty: BinaryTree Boolean TU Ilmenau Seite 2 / 54

11 Implementierung von Binärbäumen Die Implementierung von Binärbäumen kann über verzeigerte Strukturen erfolgen (siehe AuP-Vorlesung). T : A B C D E F G H TU Ilmenau Seite 2 / 54 Implementierung von BinaryTree Jeder (innere) Knoten ist eine Struktur mit drei Einträgen. Externe Knoten werden nicht repräsentiert (NULL-Zeiger) data leftchild rightchild Speichebedarf für n Knoten: n Dateneinträge und 2n Zeiger, davon n + NULL-Zeiger Zur besseren Navigation bietet sich häufig das Hinzufügen eines Zeigers zum Vater an. data parent leftchild rightchild Details zur Implementierung: AuP TU Ilmenau Seite 22 / 54

12 Die rekursive Auffassung von Binärbäumen Definition (Induktive Definition von Binärbäumen) D sei eine Menge von Knotenmarkierungen und Z eine Menge von Blattmarkierungen. Für jedes z Z ist (z) ein (D, Z)-Binärbaum. (z) ˆ= z 2 Wenn T und T 2 (D, Z)-Binärbäume sind und x D, dann ist auch (T, x, T 2 ) ein (D, Z)-Binärbaum. x (T, x, T 2 ) ˆ= 3 Nichts sonst ist ein (D, Z)-Binärbaum. T T 2 TU Ilmenau Seite 23 / 54 Die rekursive Auffassung von Binärbäumen Die rekursive Definition erlaubt zwei Interpretationen von Binärbäumen: als geschachtelte Tripel als Zeichenkette Vorteil der rekursiven Definition: Übersichtlichere Programme und Korrektheitsüberlegungen Vorteil der flachen Definition: Eventuell effizientere Ausführung (Iteration statt Rekursion) TU Ilmenau Seite 24 / 54

13 Die rekursive Auffassung von Binärbäumen T : A B C D 7 E F 37 G 29 H ((37, D, (7, G, 3)), B, 7), A, ((29, E, (, H, 23)), C, (3, F, 3)) TU Ilmenau Seite 25 / 54 Die rekursive Auffassung von Binärbäumen Beispiel (Arithmetische Ausdrücke) D = {+,,, /} und Z = {x, x 2, x 3,... }. / + + x x 5 x 5 x 6 x 2 x 4 / x 9 x 3 x 3 x 7 x 6 x Der Arithmetische Ausdruck entspricht der rekursiven Darstellung ohne Kommas. ((((x 2 x 4 ) + ((x 3 x 7 ) (x 6 /x ))) + (x 5 (x 9 x 3 )))/((x 5 x 6 ) x )) TU Ilmenau Seite 26 / 54

14 Umbau von rekursiver zu flacher Struktur Ist T = (z), so besteht die flache Version von T aus einem externen Knoten mit Inschrift Z. Dieser Knoten ist gleichzeitig die Wurzel. (z) ˆ= z Ist T = (T, x, T 2 ), dann wird rekursiv eine flache Version der beiden Unterbäume T und T 2 konstruiert. r und r 2 seien deren Wurzeln. Anschließend wird ein neuer innerer Knoten r mit Inschrift x erzeut und leftchild(r) = r und rightchild(r) = r 2 gesetzt. (T, x, T 2 ) ˆ= r x r r 2 T T 2 TU Ilmenau Seite 27 / 54 Die Modellalgebra von Binärbäumen Die Modellalgebra für BinaryTree Elements ˆ= BinaryTree ˆ= nichtleere MengeD {T T ist (D, {})-Binärbaum} empty() := compose(x, T, T 2 ) := (T, x, T 2 ) { T falls T = (T, x, T 2 ) leftsubtree(t) := falls T = { T 2 falls T = (T, x, T 2 ) rightsubtree(t) := falls T =... TU Ilmenau Seite 28 / 54

15 Die Modellalgebra von Binärbäumen Die Modellalgebra für BinaryTree (Fortsetzung) data(t) := isempty(t) := { x falls T = (T, x, T 2 ) falls T = { false falls T = (T, x, T 2 ) true falls T = TU Ilmenau Seite 29 / 54 Terminologie: Tiefe/Level eines Knotens Die Länge des Wegs ω = (v, v,...,v d ) von der Wurzel r = v zum Knoten v = v d heißt Tiefe oder Level von v und wird mit d(v) bezeichnet TU Ilmenau Seite 3 / 54

16 Terminologie: Tiefe/Höhe eines Binärbaumes mit leeren Blättern Definition Die Tiefe d(t) bzw. Höhe h(t) eines Binärbaumes T mit leeren externen Knoten ist wie folgt definiert: d(t) := für T =. d(t) := max {d(v) v ist innerer Koten von T } für T Es gilt d( ) := d((t, x, T 2 )) := + max {d(t ), d(t 2 )}. TU Ilmenau Seite 3 / 54 Terminologie: Tiefe/Höhe eines Binärbaumes mit leeren Blättern Beispiel Höhe - Höhe 3 x 5 Höhe x 2 x 6 x x 4 x 7 x 3 TU Ilmenau Seite 32 / 54

17 Terminologie: Tiefe/Höhe eines Binärbaumes mit nichtleeren Blättern Definition Die Tiefe d(t) bzw. Höhe h(t) eines Binärbaumes T mit nichtleeren externen Knoten ist wie folgt definiert: d(t) := max {d(v) v ist äußerer Knoten von T }. Damit entspricht die Höhe eines Binärbaumes der maximalen Länge eines Weges von der Wurzel zu einem Blatt. TU Ilmenau Seite 33 / 54 Terminologie: Tiefe/Höhe eines Binärbaumes mit nichtleeren Blättern Beispiel Der folgende Baum hat Tiefe 4. E C G D H F B I A K TU Ilmenau Seite 34 / 54

18 Terminologie: Die Höhe eines Knotens Definition Die Höhe h(v) eines Knotens v von T ist definiert als die Tiefe d(t v ) des Teilbaums mit Wurzel v. Beispiel Höhe 4 Höhe 3 E Höhe 2 C G D Höhe H F B I A K TU Ilmenau Seite 35 / 54 Was Sie schon immer über Binärbäume wissen wollten... Binärbaumfakten T sei ein Binärbaum mit n inneren Knoten und leeren äußeren Knoten. Dann gilt T hat 2n Kanten/Zeiger 2 T hat n + äußere Knoten 3 Auf Level l liegen höchstens 2 l Knoten, l =,, 2,... 4 Auf Level bis l liegen zusammen höchstens l i= 2i = 2 l+ Knoten. Damit gilt stets log(n + ) d(t) + 5 n d(t) log(n + ) d.h. die Tiefe eines Binärbaumsmit mit n inneren Knoten ist mindestens log n. TU Ilmenau Seite 36 / 54

19 Was Sie schon immer über Binärbäume wissen wollten... Binärbaumfakten 2 T sei ein Binärbaum mit N nichtleeren äußeren Knoten. Dann gilt T hat n = N innere Knoten 2 T hat 2N 2 Kanten/Zeiger 3 Auf Level bis l liegen zusammen höchstens 2 l Blätter, l =,, 2,... 4 N 2 d(t) 5 N d(t) log N d.h. die Tiefe eines Binärbaumes mit N nichtleeren äußeren Knoten ist mindestens log N. TU Ilmenau Seite 37 / 54 Durchläufe von Binärbäumen TU Ilmenau Seite 38 / 54

20 Durchläufe von Binärbäumen In vielen Anwendungen muss man (D, Z)-Binärbäume systematisch durchlaufen. Dabei werden nacheinander die Knoten besucht und anwendungsabhängige Aktionen an ihnen durchgeführt. Im Allgemeinen kann man davon ausgehen, dass dazu zwei visit-operationen zur Verfügung stehen: i visit für innere Knoten e visit für äußere Knoten Bei Aufruf auf einem Binärbaum T führen sie die Operation für die Wurzel des Baumes T aus. Beispielaktionen: Die Daten data(t) ausgeben; eine laufende Nummer an die Wurzel v von T vergeben; Zeiger auf T an eine Liste anhängen; zur Wurzel v gehörende Aktion ausführen. TU Ilmenau Seite 39 / 54 Inorder-Durchlauf Inorder-Durchlauf if T = (z) then e visit(z); if T = (T, z, T 2 ) then Inorder-Durchlauf von T ; i visit(z); Inorder-Durchlauf von T 2 ; end TU Ilmenau Seite 4 / 54

21 Inorder-Durchlauf T : F A O H v S O d T d I t d a r e r dhatravfdseirotod TU Ilmenau Seite 4 / 54 Präorder-Durchlauf Präorder-Durchlauf if T = (z) then e visit(z); if T = (T, z, T 2 ) then i visit(z); Präorder-Durchlauf von T ; Präorder-Durchlauf von T 2 ; end TU Ilmenau Seite 42 / 54

22 Präorder-Durchlauf T : F A O H v S O d T d I t d a r e r FAHdTarvOSdIerOtd TU Ilmenau Seite 43 / 54 Postorder-Durchlauf Postorder-Durchlauf if T = (z) then e visit(z); if T = (T, z, T 2 ) then Postorder-Durchlauf von T ; Postorder-Durchlauf von T 2 ; i visit(z); end TU Ilmenau Seite 44 / 54

23 Postorder-Durchlauf T : F A O H v S O d T d I t d a r e r darthvaderistdoof TU Ilmenau Seite 45 / 54 Arithmetische Ausdrücke als Baum Beispiel Die Auswertung eines als Baum vorliegenden arithmetischen Ausdrucks kann in Postorder-Reihenfolge geschehen. Diese Reihenfolge garantiert, dass die Kinder ausgewertet sind, bevor ein Knoten bearbeitet wird. / + + x x 5 x 5 x 6 x 2 x 4 / x 9 x 3 x 3 x 7 x 6 x / -5 TU Ilmenau Seite 46 /

24 Der Kombi-Durchlauf Kombinierter Durchlauf if T = (z) then e visit(z); if T = (T, z, T 2 ) then preorder ivisit(z); Kombi-Durchlauf von T ; inorder ivisit(z); Kombi-Durchlauf von T 2 ; postorder ivisit(z); end Diese Form des Durchlaufs ermöglicht den Datentransport von der Wurzel nach unten und wieder zurück. TU Ilmenau Seite 47 / 54 Zeitanalyse Die Baumdurchläufe wurden mittels rekursiver Prozeduren beschrieben. Jede dieser Prozeduren benötigt abgesehen von den rekursiven Aufrufen genau die Zeit, die i visit bzw. e visit benötigen. Für jeden inneren und äußeren Knoten wird die Prozedur genau einmal aufgerufen. Gesamtzeit auf einem Binärbaum mit n inneren Knoten: O(n T ivisit + (n + ) T evisit ) wobei T ivisit und T evisit die von den beiden visit-operationen benötigte Zeit ist. Fazit Die In-, Prä- und Postorder-Durchläufe eines Binärbaumes mit n inneren Knoten benötigen abgesehen von den Aufrufen für die visit-operationen lineare Zeit. TU Ilmenau Seite 48 / 54

25 Levelorder-Durchläufe a c d a c c 2 e d b d f 3 Wir möchten die Knoten levelweise von links nach rechts ablaufen. Resultierende Ausgabe: a, c, d, a, c, c, e, d, b, d, f TU Ilmenau Seite 49 / 54 Levelorder-Durchläufe a c d a c c 2 e d b d f 3 Beobachtung Sei v, v 2,..., v k die korrekte Reihenfolge der Knoten im Level l. Dann ist die korrekte Reihenfolge der Knoten im Level l + : leftchild(v ), rightchild(v ), leftchild(v 2 ), rightchild(v 2 ),... wobei fehlende Kinder einfach weggelassen werden. TU Ilmenau Seite 5 / 54

26 Levelorder-Durchläufe a c d a c c 2 e d b d f 3 Dies führt zu der Idee, eine Queue zu benutzen, in die wir zuerst die Knoten des Levels d.h. die Wurzel einfügen. Anschließend wird der erste Knoten entfernt und dessen Kinder hinten an die Queue angehängt. Dieses wird wiederholt, bis die Queue leer ist. TU Ilmenau Seite 5 / 54 Levelorder-Durchläufe Eingabe: Ein Binärbaum v (repräsentiert durch seine Wurzel) Daten: Eine Queue Q von Binärbäumen count = ; if v NULL then count + +; v.order = count; // Entdecke die Wurzel v.level = ; enqueue(q, v); end while not isempty(q) do w = first(q); dequeue(q); visit(w); for p = leftchild(w),rightchild(w) do if p! = NULL then count + +; p.order = count; // Entdecke p p.level = w.level + ; enqueue(q, p) ; end end end TU Ilmenau Seite 52 / 54

27 Die Korrektheit Satz Der Levelorder-Durchlauf benötigt Zeit O(n T visit + n), wobei T visit die Zeit für visit ist. 2 Der Levelorder-Durchlauf ordnet jedem Knoten v des Binärbaums korrekt seine Tiefe zu (in v.level) Beweisskizze Man beweist die folgende Behauptung per Induktion über das Level von v: Jeder innere Knoten v des Binärbaums wird genau einaml in die Queue eingefügt, genau einmal entnommen und im Rumpf der While-Schleife bearbeitet. Dabei wird die korrekte Levelnummer vergeben. Weil Queue-Operationen Zeit O() benötigen, ist der Zeitbedarf ohne die visit-operationen in O(n). TU Ilmenau Seite 53 / 54

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. 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

Mehr

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.

Lernziele: 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

Mehr

Binäre Bäume Darstellung und Traversierung

Binä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.

Mehr

368 4 Algorithmen und Datenstrukturen

368 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

Mehr

SS16 Algorithmen und Datenstrukturen 3. Kapitel

SS16 Algorithmen und Datenstrukturen 3. Kapitel SS6 Algorithmen und Datenstrukturen 3. Kapitel Binärbäume Martin Dietzfelbinger April 206 FG KTuEA, TU Ilmenau Algorithmen und Datenstrukturen SS6 Kapitel 3 3. Binärbäume: Grundlagen Der Datentyp (und

Mehr

13. Binäre Suchbäume

13. 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),

Mehr

Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10

Idee: 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

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & 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

Mehr

WS 2009/10. Diskrete Strukturen

WS 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

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests 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

Mehr

Datenstrukturen und Algorithmen

Datenstrukturen 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

Mehr

Algorithmen und Datenstrukturen

Algorithmen 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

Mehr

15 Optimales Kodieren

15 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

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 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

Mehr

Kap. 4.2: Binäre Suchbäume

Kap. 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:

Mehr

Algorithmen und Datenstrukturen Suchbaum

Algorithmen 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

Mehr

t 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 )

t 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

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binä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

Mehr

Informatik II Bäume. Beispiele. G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de. Stammbaum. Stammbaum. Stammbaum

Informatik II Bäume. Beispiele. G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de. Stammbaum. Stammbaum. Stammbaum lausthal Beispiele Stammbaum Informatik II. Zachmann lausthal University, ermany zach@in.tu-clausthal.de. Zachmann Informatik - SS 06 Stammbaum Stammbaum / Parse tree, Rekursionsbaum Parse tree, Rekursionsbaum

Mehr

KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN

KONSTRUKTION 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

Mehr

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.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)

Mehr

1 topologisches Sortieren

1 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

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

Tutorium Algorithmen & Datenstrukturen

Tutorium 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

Mehr

Datenstruktur, die viele Operationen dynamischer Mengen unterstützt

Datenstruktur, 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)

Mehr

Algorithmik 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.

Algorithmik 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

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine 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

Mehr

Kapitel 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 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:

Mehr

Programmierkurs Java

Programmierkurs 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

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen 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

Mehr

AVL-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. 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

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen 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

Kurs 1613 Einführung in die imperative Programmierung

Kurs 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

Mehr

Theoretische Grundlagen der Informatik WS 09/10

Theoretische 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

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Wiederholung ADT Menge Ziel: Verwaltung (Finden, Einfügen, Entfernen) einer Menge von Elementen

Wiederholung 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

Mehr

Theoretische Informatik SS 04 Übung 1

Theoretische 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

Grundlagen der Programmierung 2. Bäume

Grundlagen 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)

Mehr

Summenbildung in Bauteiltabellen mit If Then Abfrage

Summenbildung in Bauteiltabellen mit If Then Abfrage Summenbildung in Bauteiltabellen mit If Then Abfrage Die in Bauteiltabellen ausgelesenen Werte lassen sich in jeder Spalte als Summe berechnen. So können selbstverständlich die Flächen der in der Tabelle

Mehr

Algorithmen und Datenstrukturen Balancierte Suchbäume

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

Mehr

DATENSTRUKTUREN UND ZAHLENSYSTEME

DATENSTRUKTUREN 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

Mehr

3.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 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

Mehr

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele Organisation Was kommt zum Test? Buch Informatik Grundlagen bis inkl Kapitel 74 Wissensfragen und Rechenbeispiele 3 Vorträge zur Übung Informationstheorie, Huffman-Codierung und trennzeichenfreie Codierung

Mehr

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Basis und Dimension Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Definition. Sei V ein K-Vektorraum und (v i ) i I eine Familie von Vektoren

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen 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)

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle 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

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren: 4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie

Mehr

Grundlagen der Informatik I Informationsdarstellung

Grundlagen der Informatik I Informationsdarstellung Grundlagen der Informatik I Informationsdarstellung Einführung in die Informatik, Gumm, H.-P./Sommer, M. Themen der heutigen Veranstaltung. ASCIi Code 2. Zeichenketten 3. Logische Operationen 4. Zahlendarstellung

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

Kurzanweisung für Google Analytics

Kurzanweisung für Google Analytics Kurzanweisung für Google Analytics 1. Neues Profil für eine zu trackende Webseite erstellen Nach dem Anmelden klicken Sie rechts oben auf den Button Verwaltung : Daraufhin erscheint die Kontoliste. Klicken

Mehr

Informatik 11 Kapitel 2 - Rekursive Datenstrukturen

Informatik 11 Kapitel 2 - Rekursive Datenstrukturen Fachschaft Informatik Informatik 11 Kapitel 2 - Rekursive Datenstrukturen Michael Steinhuber König-Karlmann-Gymnasium Altötting 15. Januar 2016 Folie 1/77 Inhaltsverzeichnis I 1 Datenstruktur Schlange

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Algorithmen für Graphen Fragestellungen: Suche

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs 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

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. 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

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. 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:

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen 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

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel Sehr vielen Mitarbeitern fällt es schwer, Serienbriefe an Kunden zu verschicken, wenn sie die Serienbrieffunktion von Word nicht beherrschen. Wenn die Kunden mit Excel verwaltet werden, genügen nur ein

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte

Mehr

Hilfe zur Urlaubsplanung und Zeiterfassung

Hilfe zur Urlaubsplanung und Zeiterfassung Hilfe zur Urlaubsplanung und Zeiterfassung Urlaubs- und Arbeitsplanung: Mit der Urlaubs- und Arbeitsplanung kann jeder Mitarbeiter in Coffee seine Zeiten eintragen. Die Eintragung kann mit dem Status anfragen,

Mehr

Verkehrsteilnehmer. Beispiel: Wir betrachten die Modellierung von Handlungskomponenten wie Verkehrsteilnehmern und Straßen.

Verkehrsteilnehmer. Beispiel: Wir betrachten die Modellierung von Handlungskomponenten wie Verkehrsteilnehmern und Straßen. 7.6 Bedingte Rechte Manchmal sind Rechte nur unter bestimmten Voraussetzungen gültig. Diese Situation beschreiben wir -wie sonst auch üblich- mit bedingten Rechten. Beispiel: Wir betrachten die Modellierung

Mehr

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche: Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 5/ 44 Unser Modell Shannon

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: 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

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

Anleitung für Kunden zum Umgang mit verschlüsselten E-Mails von der LASA Brandenburg GmbH

Anleitung für Kunden zum Umgang mit verschlüsselten E-Mails von der LASA Brandenburg GmbH Anleitung für Kunden zum Umgang mit verschlüsselten E-Mails von der LASA Brandenburg GmbH 1. Sie erhalten von der LASA eine E-Mail mit dem Absender Beim Öffnen der E-Mail werden Sie aufgefordert, sich

Mehr

Whitebox-Tests: Allgemeines

Whitebox-Tests: Allgemeines -Tests: Allgemeines Andere Bezeichnungen Logic driven, Strukturelles Der Tester entwickelt Testfälle aus einer Betrachtung der Ablauflogik des Programms unter Berücksichtigung der Spezifikation Intuitiv

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

my.ohm Content Services Autorenansicht Rechte

my.ohm Content Services Autorenansicht Rechte my.ohm Content Services Autorenansicht Rechte Felizitas Heinebrodt Technische Hochschule Nürnberg Rechenzentrum Kesslerplatz 12, 90489 Nürnberg Version 2 August 2015 DokID: cs-rechte-autor Vers. 2, 18.08.2015,

Mehr

Programmiertechnik II

Programmiertechnik 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,...

Mehr

Software-Engineering SS03. Zustandsautomat

Software-Engineering SS03. Zustandsautomat Zustandsautomat Definition: Ein endlicher Automat oder Zustandsautomat besteht aus einer endlichen Zahl von internen Konfigurationen - Zustände genannt. Der Zustand eines Systems beinhaltet implizit die

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Informationsblatt Induktionsbeweis

Informationsblatt 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

Mehr

Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen

Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen aussagenlogischer Regeln: Wissensbasis (Kontextwissen): Formelmenge,

Mehr

Zur drittletzten Zeile scrollen

Zur drittletzten Zeile scrollen 1 Fragen und Antworten zur Computerbedienung Thema : Zur drittletzten Zeile scrollen Thema Stichwort Programm Letzte Anpassung Zur drittletzten Zeile scrollen Scrollen VBA Excel 1.02.2014 Kurzbeschreibung:

Mehr

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum 4. Lernen von Entscheidungsbäumen Klassifikation mit Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch /Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse zugeordnet werden.

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Zweck dieser Anleitung ist es einen kleinen Überblick über die Funktion Last Minute auf Swisshotelportal zu erhalten. Für das erstellen

Mehr

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen 1. Formale Sprachen 1.2 Grammatiken formaler Sprachen Die Regeln zur Bildung korrekter Wörter einer Sprache kann man in einer natürlichen Sprache formulieren. Da dies jedoch wieder Mehrdeutigkeiten mit

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

Programmteil Zeiterfassung für Projekt und Mitarbeiter

Programmteil Zeiterfassung für Projekt und Mitarbeiter Programmteil Zeiterfassung für Projekt und Mitarbeiter Version: 2.01 Datum: 24.02.2004 Modul: Projektverwaltung, Zeiterfassung Programmaufruf: Stammdaten Grunddaten Lohnarten Stammdaten Mitarbeiter Belege

Mehr

Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben

Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben Technische Universität Kaiserslautern Prof Dr Sven O Krumke Dr Sabine Büttner MSc Marco Natale Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben Aufgabe 1 (Konvertieren

Mehr

Stapelverarbeitung Teil 1

Stapelverarbeitung Teil 1 Stapelverarbeitung Teil 1 In jedem Unternehmen gibt es von Zeit zu Zeit Änderungen in Normen und Firmenstandards, an die aktuelle und bereits bestehende Zeichnungen angepasst werden müssen. Auch Fehler

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Algorithmen und Datenstrukturen. Bäume. M. Herpers, Y. Jung, P. Klingebiel

Algorithmen und Datenstrukturen. Bäume. M. Herpers, Y. Jung, P. Klingebiel Algorithmen und Datenstrukturen Bäume M. Herpers, Y. Jung, P. Klingebiel 1 Lernziele Baumstrukturen und Ihre Verwendung kennen Grundbegriffe zu Bäumen anwenden können Baumstruktur in C anlegen können Suchbäume

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht 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

Mehr

Anzeige von eingescannten Rechnungen

Anzeige von eingescannten Rechnungen Anzeige von eingescannten Rechnungen Wenn Sie sich zu einer Eingangsrechnung die eingescannte Originalrechnung ansehen möchten, wählen Sie als ersten Schritt aus Ihrem Benutzermenü unter dem Kapitel Eingangsrechnung

Mehr

ARCO Software - Anleitung zur Umstellung der MWSt

ARCO Software - Anleitung zur Umstellung der MWSt ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.

Mehr

Bauteilattribute als Sachdaten anzeigen

Bauteilattribute als Sachdaten anzeigen Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...

Mehr

Freischaltung eines neuen VR-NetKeys mit SecureGo

Freischaltung eines neuen VR-NetKeys mit SecureGo Sie haben Ihren VR-NetKey erhalten und müssen nun die Registrierung der VR-SecureGo App vornehmen, d.h. die VR-SecureGo App auf dem Smartphone installieren, BLZ + VR-NetKey eingeben und anschließend ein

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP Diese Anleitung beschreibt den Ablauf bei der Installation und Deinstallation der Treiber für die METTLER TOLEDO USB-Option unter Windows XP. Die USB-Option wird als zusätzliche serielle Schnittstelle

Mehr

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Seite 1/7 Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Hier sehen Sie eine Anleitung wie man einen Serienbrief erstellt. Die Anleitung

Mehr

Anwendungsbeispiele. Neuerungen in den E-Mails. Webling ist ein Produkt der Firma:

Anwendungsbeispiele. Neuerungen in den E-Mails. Webling ist ein Produkt der Firma: Anwendungsbeispiele Neuerungen in den E-Mails Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Neuerungen in den E- Mails 2 Was gibt es neues? 3 E- Mail Designs 4 Bilder in E- Mails einfügen 1 Neuerungen

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit 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

Mehr