Diskrete Simulation. Diskrete Simulation. Diskrete Simulation Einführung. Inhalt. Prinzip der diskreten Simulation

Größe: px
Ab Seite anzeigen:

Download "Diskrete Simulation. Diskrete Simulation. Diskrete Simulation Einführung. Inhalt. Prinzip der diskreten Simulation"

Transkript

1 Einführung Inhalt Prinzip der diskreten Simulation Modellierung mit Ereignissen Verarbeitungsprozesse und Betriebsmittel DEVS Modelle Diskreter Simulationsalgorithmus Abbildung von diskreten Modellen in AnyLogic *

2 Ereignisorientierte Modellierung Reduzierung des Verhaltens auf die wesentlichen Ereignisse Modellierung der Änderungen an Ereigniszeitpunkten Modellierung der Zeitspannen zwischen den Ereignissen diskrete Zustandsänderung S s 1 s 2 Zeitspanne? T Beispiele: Abfahrt - Ankunft Bestellung - Lieferung Schicken - Empfangen von einem zum nächsten Schwellwert Input - Output Beginn - Ende Tätigkeit + Beispiel: Simulation von Gatterschaltungen Bei der Simulation von Gatterlogik (Logiksimulation) werden die Schaltvorgänge auf diskrete Werte und Ereignisse abstrahiert. Dabei werden in den Gattern Gatterlaufzeiten berücksichtigt, die die zeitliche Verzögerung der Signale in den Gattern darstellen. Eventuell werden auch Leitungslaufzeiten berücksichtigt & Verzögerung durch Leitungslaufzeit Verzögerung durch Gatterlaufzeit ,

3 Zeitspannen Wesentlich ist die Modellierung der Zeitspannen zwischen den Ereignissen Abstraktion der Aktivitäten / Tätigkeiten auf die Zeitspannen von Anfang und Ende Möglichkeiten der Modellierung von Zeitspannen deterministisch: exakte Zeitspanne wird durch eine Formel bestimmt stochastisch: Zeitspanne wird zufällig nach einer bestimmten Zufallsverteilung bestimmt siehe stochastische Simulation - Prinzip der diskreten Simulation parallele Entitäten mit durch Ereignisse begrenzten Aktivitäten Ereignisse zu unterschiedlichen, beliebigen Zeitpunkten Abarbeitung der Ereignisse in zeitlicher Ordnung Simulation springt von Ereignis zu Ereignis.

4 Prinzip der diskreten Simulation Aufgrund der aktuellen Zustände lassen sich die Zeitpunkte, wann die nächsten Ereignisse auftreten, bestimmen Zustandsänderungen passieren nur bei Ereignissen Zu jedem Zeitpunkt gibt es ein nächstes Ereignis, bis dahin passiert nichts (keine Zustandsänderungen, keine neuen Ereignisse) Dieses nächste Ereignis wird durchgeführt: entsprechende Zustandsänderungen werden gemacht eingeplante aber hinfällige Ereignisse werden gelöscht neue Ereignisse werden eingeplant / Anwendungen der diskreten Simulation Diskrete Prozeßsimulation: Leistungsanalyse von Systemen Fertigungssysteme Transportsysteme Verkehrssysteme Computersysteme (Rechnerarchitektur) Kommunikationssysteme LAN Betriebliche Abläufe Lagerbestandshaltung... Aber auch allgemein Verhaltensanalyse Hardwareentwurf (Logik) ereignisorientiertes Simulation von kontinuierlichem Verhalten... 0

5 Diskrete Prozesssimulation Systemen gesehen als Betriebsmittel (Resourcen) Verarbeitung von Elementen unter Verwendung von Betriebsmittel Untersuchung von Systemen bezüglich Leistung: Durchsatz Umlaufzeiten Wartezeiten Bearbeitungszeiten Auslastung/Belegung der einzelnen Komponenten Engpässe erforderliche Größe der Pufferplätze, Warteschlangen, Lager Verhalten bei Ausnahmefällen, Ausfällen, Fehlverhalten 1 DEVS - Discrete Event Specified System Formalismus für ereignisorientierte Systeme analog den Automaten und Differentialsystemen DEVS = < X, S, Y, δ int, δ ext, ta, λ > X: Menge der Eingabeereignisse Y: Menge der Ausgabeereignisse S: die Menge der Zustände δ ext : Q x X S ta: S R + {0, } δ int : S S externe Übergangsfunktion mit Q = { (s,e) s S und 0 e ta(s) Zeitfortschrittsfunktion assoziiert mit jedem Zustand eine Zeitspanne, die dieser Zustand von sich aus bestehen bleibt bevor ein interner Zustandsübergang ausgelöst wird. λ: S Y Ausgabefunktion interne Übergangsfunktion (zeitgetriggerte Ereignisse) -

6 Verhalten eines DEVS Modells 2 Ereignisse interne Ereignisse (zeitlich eingeplante Ereignisse, Zeitereignisse) War das System zu einem Zeitpunkt t für ta(s) Zeiteinheiten im Zustand s (die seit dem letzten Ereignis vergangene Zeit e ist gleich ta(s) ), so tritt ein internes Ereignis auf, d.h. es wird das System in den Zustand s = δ int (s) übergeführt, die Ausgabe λ(s) gemacht und die vergangene Zeit e wird auf 0 gesetzt externe Ereignisse (Eingabeereignisse) War das System zu einem Zeitpunkt t für e ta(s) Zeiteinheiten im Zustand s und tritt ein Eingabeereignis x auf, so wird das System in den Zustand s = δ ext (s,e,x) übergeführt und die vergangene Zeit e wird auf 0 gesetzt.. SingleServer: Ankunft - Warten - Verarbeitung Single Server Bespiel: Einfache Bedienstation Beispielproblem: Schalter mit einem Schalterbeamten folgende Fragen: - durchschnittliche Länge der Warteschlange - durchschnittliche Wartezeit - Durchsatz - Auslastung des Beamten /

7 Single Server: Simulation Zeit Ereignis eingeplantefolgeereignisse 0 Ankunft a, Beginn der Bedienung a 5: Ende der Bedienung a 5 Ende Bedienung a 7 Ankunft b, Beginn der Bedienung b 12: Ende der Bedienung b 9 Ankunft c, Einreihen in Warteschlange c 12 Ende Bedienung b Beginn der Bedienung c 17: Ende der Bedienung c SingleServer: Verhalten in phase busy idle queue ( ) a (a) ( ) b (b) c (b c) (c) ( ) out a b c 0

8 SingleServer: DEVS-Modell SingleServer = (X, Y, S, δ ext, δ int, λ, ta) X = { in in {a, b, c,... } } Y = { out out {a, b, c,... }} S = {(timeleft, phase, queue) timeleft R + 0, phase {idle, busy}, queue {a, b, c,... }*} δ ext (((timeleft, phase, queue), e, in) queue = queue.insert(in) case (phase) idle: phase = busy timeleft = 10 busy: phase = busy timeleft = timeleft - e δ int,λ ((timeleft, phase, queue)) out = queue.getfirst() queue = queue.removefirst() if queue.isempty() then phase = idle timeleft = else timeleft = 10 ta ((timeleft, phase, queue)) return( timeleft ) // continue with the current job // output is the first in the queue // no jobs to process, hence passivate // begin to service next job // the time advance specified by timeleft *1 Single Server: Blockdiagram und Statechart-Modell idle in / queue.insert(in); timeleft = SERVICE_TIME timeleft [queue.size() == 1] / out.send(queue.getfirst(); queue.removefirst(); busy timeleft [! queue.size > 1 ] / out.send(queue.getfirst(); queue.removefirst(); timeleft = SERVICE_TIME in / queue.insert(in); timeleft = timeleft e; *

9 Generator: Erzeugen von Elementen aktives DEVS ohne Eingabe Generierung von ereignisorientierten Trajektorien Generator = <Y, S, δ int, λ, ta> Y = {out out Jobs} S = {(timeleft, nrgenerated) timeleft R+0, jobid {a, b, c,...}} } δ int,λ ((timeleft, phase, queue, IA_TIME)) out = jobid jobid == next jobid nrgenerated=+1 timeleft = IA_TIME ta ((timeleft, phase, queue)) return( timeleft ) *. Sink: Aufnahme von Elementen passiv nur externe Eingaben Berechnung des Durchsatzes Sink = <X, S, δ ext > X = {in in Jobs} S = {(thruput, number, totaltime) thruput R, number N, totaltime R} δ ext ((thruput, number, totaltime), e, in) number = number + 1 totalelapsedtime = totaltime + e thruput = number / totaltime ta ((timeleft, phase, queue)) = s 0 = (0, 0, 0) // Anfangszustand */

10 DEVS-Netzwerke (DEVN oder gekoppelte DEVS) DEVN = < X, Y, D, EIC, EOC, IC, Select > X Y D EIC EOC IC wobei Select : 2D D ist die Menge der Eingabewerte ist die Menge der Ausgabewerte ist die Menge der Komponenten ist die externe Eingabekopplung ist die externe Ausgabekopplung ist die interne Kopplung ist die Konfliktlösefunktion (tie breaking function) Elemente d D sind atomare oder gekoppelte DEVS Modelle EIC ist die Menge der Kopplungen von Eingabeports des gekoppelten DEVS zu Eingabeports von Komponenten EOC ist die Menge der Kopplungen von Ausgabeports von Komponenten zu Ausgabeports des Netzwerks IC ist die Menge der Kopplungen zwischen den Komponenten, d.h. Kopplungen von Ausgabeports von Komponenten zu Eingabeports von Komponenten. Die Funktion Select wählt bei Gleichzeitigkeit von nächsten internen Ereignissen eine Komponente aus *2 Beispiel eines DEVS Netzwerks out out in SingleServer out in in JobGe nerator Env Thru put Env-SingleServer *0

11 Beispiel eines DEVS Netzwerks: Mengenschreibweise Env = < X, Y, D, EIC, EOC, IC, Select > X = {in in {a, b, c,... }} Y = {out out {a, b, c,... }} D = {Generator, Thruput} EIC = {(Env.in, Thruput.in} EOC = {(Generator.out, Env.out)} IC = { } Select : { } { } {Generator} {Generator} {Thruput} {Thruput} {Generator, Thruput} {Generator} Env-SingleServer = < X, Y, D, EIC, EOC, IC, Select> X = { } Y = { } D = {SingleServer, Env} EIC = {} EOC = {} IC = {(Env.out, SingleServer.in), (SingleServer.out, Env.in)} Select = (SingleServer, Env) +1 Simulationsalgorithmus für diskrete Systeme (allgemein) Datenstrukturen Modell mit Zuständen und Zustandverhalten bei Ereignissen Simulationszeit Ereignisliste: Liste von eingeplanten Ereignissen nach Zeitpunkt sortiert Simulationsschleife do Gehe zu Ereignis mit minimaler Ereigniszeit (*) Setze Simulationszeit auf diese Ereigniszeit Führe Ereignis durch, d.h. führe alle Zustandsänderungen durch plane neue Ereignisse ein bzw. lösche nicht mehr gültige Ereignisse until Ende der Simulation (*) bei mehreren Ereignissen mit gleicher nächster Zeit entscheide nach einer vorgegeben Priorität +

12 Simulationsalgorithmus für DEVS Modelle n Komponenten mit DEVS d = < X d, S d, Y d, δ int,d, δ ext,di, ta d, λ d > tn d = t + ta d (s d ) Simulationsschleife ist der nächste Zeitpunkt für internes Ereignis bei d δ λ λ δ +* Implementierung von Ereignislisten Anforderungen : schneller Zugriff auf das minimale Element schnelles Löschen und sortiertes Einfügen von Elementen Varianten: lineare Liste Heap AVL-Bäume ++

13 Heap für Ereignislisten Binärer Baum organisiert nach der Heap-Bedingung: Ein Vaterknoten ist immer kleiner als seine Söhne Sortieren des Baums: Ein Knoten wird durch Sickern nach oben oder unten richtig einsortiert Sickern durch Vertauschen von Vater- und Sohnknoten Ein Knoten sickert nach oben, wenn sein Vater größer als er selbst ist Ein Knoten sickert nach unten, wenn sein kleinerer Sohn kleiner als er selbst ist. Komplexität: Zugriff auf das kleinste Element: Zugriff auf die Wurzel (Komplexität O(1)) Löschen des ersten Elements: Ersetzen des ersten durch das letzte Element und eventuell sickern nach unten (Komplexität O(ld n)) Einfügen eines neuen Knotens: Einfügen an die letzte Stelle und eventuell sickern nach oben (Komplexität O(ld n)) Neu Einsortieren eines eingefügten Knotens: Sickern nach oben oder unten (Komplexität O(ld n)) +, in AnyLogic AnyLogic bietet für die diskrete Simulation Statecharts mit Port und dynamic events Time Events Change Events Timers Ports und Message-Kommunikation inklusive Queue bei Ports +.

14 AnyLogic Statecharts: Zeitereignis Zeitspanne bis Transition triggern soll konstanter Wert, Bsp.: 2.56 jeder Ausdruck, welcher einen numerischen Wert liefert, insbesondere Zufallsverteilungen, welche eine zufällige Zeitspanne liefern soll Bsp.: Trigger: 2.56 Trigger: mydistrexponent.get() +/ AnyLogic Timers Timers sind Objekte die Ereignisse in der Zeit auslösen und bei Auslösen Ihre Expiry action ausführen. Es gibt: Chart oder Static timers: werden im Strukturdiagramm angelegt sind statisch werden mit immer wieder gestartet und mit angehalten +2

15 AnyLogic Timers (2) Dynamic Timers werden abgeleitet von Verhalten: werden dynamisch mit Zeitspanne erzeugt, laufen ab, führen ihre Expiry action aus und werden dann zerstört +0 AnyLogic Timers (3): Beispiel Delay -Baustein mit nimmt ein Objekt auf und gibt es verzögert am Ausgabeport aus,1

16 Ereigniscode in AnyLogic Bei Zustandsübergängen in Statecharts bei Bei Timers bei Bei den Ports in den Code-Teilen Achtung: dieser Action-Codes müssen immer mit abschließen, wenn die Message weiter behandelt werden soll!!!!, AnyLogic Beispielmodell SingleServer,*

17 AnyLogic Modellbeispiel Generator, Sink, gekoppeltes Modell,+

Example Ptolemy Model of Comp.: Synchronous Reactive

Example Ptolemy Model of Comp.: Synchronous Reactive Prinzip: Example Ptolemy Model of Comp.: Synchronous Reactive Annahme: unendlich schnelle Maschine Diskrete Ereignisse (DE) werden zyklisch verarbeitet (Ereignisse müssen nicht jede Runde eintreffen) Pro

Mehr

1. Die rekursive Datenstruktur Liste

1. Die rekursive Datenstruktur Liste 1. Die rekursive Datenstruktur Liste 1.4 Methoden der Datenstruktur Liste Die Warteschlange (Queue) ist ein Sonderfall der Datenstruktur Liste. Bei der Warteschlange werden Einfügen und Entfernen nach

Mehr

Simulation technischer Systeme

Simulation technischer Systeme Simulation technischer Systeme SS 2004 Herbert Praehofer Institut für Systemwissenschaften Johannes Kepler Universität Linz hp@cast.uni-linz.ac.at copyright: Herbert Praehofer, Universität Linz, Adelinde

Mehr

Auswählen nach Rang (Selektion)

Auswählen nach Rang (Selektion) Auswählen nach Rang (Selektion) Geg.: Folge X von n Schlüsseln, eine Zahl k mit k n Ges.: ein k-kleinster Schlüssel von X, also den Schlüssel x k für X sortiert als x x 2 L x n trivial lösbar in Zeit O(kn)

Mehr

Diskrete Ereignis Simulation. Proseminar: Algorithmen der Verkehrssimulation Jörg Blank

Diskrete Ereignis Simulation. Proseminar: Algorithmen der Verkehrssimulation Jörg Blank Diskrete Ereignis Simulation Proseminar: Algorithmen der Verkehrssimulation Jörg Blank Definitionen zeitdiskrete Simulation System: Auschnitt der Realität Ereignis: Zustandsänderungen in Systemen Simulation:

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

Dynamische Datenstrukturen

Dynamische Datenstrukturen Dynamische Datenstrukturen B-Bäume größere Datenmengen verwalten Extern speichern Art der Speicherung berücksichtigen sonst kein optimaler Datenzugriff möglich Art der Speicherung großer Datenmengen Magnetplatten

Mehr

2. Vorlesung. Systemtheorie für Informatiker. Dr. Christoph Grimm. Professur Prof. Dr. K. Waldschmidt, Univ. Frankfurt/Main

2. Vorlesung. Systemtheorie für Informatiker. Dr. Christoph Grimm. Professur Prof. Dr. K. Waldschmidt, Univ. Frankfurt/Main 2. Vorlesung Systemtheorie für Informatiker Dr. Christoph Grimm Professur Prof. Dr. K. Waldschmidt, Univ. Frankfurt/Main Letzte Woche: EA-System Eingabe: Ausgabe: u y t E/A-System 2. Vorlesung Systemtheorie

Mehr

11.1 Grundlagen - Denitionen

11.1 Grundlagen - Denitionen 11 Binärbäume 11.1 Grundlagen - Denitionen Denition: Ein Baum ist eine Menge, die durch eine sog. Nachfolgerrelation strukturiert ist. In einem Baum gilt: (I) (II) 1 Knoten w ohne VATER(w), das ist die

Mehr

Zelluläre Automaten. Zelluläre Automaten sind einfache Simulationssysteme zur Untersuchung von komplexen Interaktionsmuster

Zelluläre Automaten. Zelluläre Automaten sind einfache Simulationssysteme zur Untersuchung von komplexen Interaktionsmuster Motivation sind einfache Simulationssysteme zur Untersuchung von komplexen Interaktionsmuster einfache Zellen räumlich angeordnet einfache Interaktionsmuster (Beziehungen zwischen benachbarten Zellen)

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Universität Innsbruck Institut für Informatik Zweite Prüfung 16. Oktober 2008 Algorithmen und Datenstrukturen Name: Matrikelnr: Die Prüfung besteht aus 8 Aufgaben. Die verfügbaren Punkte für jede Aufgabe

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2017 Marc Bux, Humboldt-Universität zu Berlin Agenda 1. (Sortierte) Listen 2. Stacks & Queues 3. Datenstrukturen 4. Rekursion und vollständige Induktion

Mehr

Ereignisbasierte Modellierung und Simulation

Ereignisbasierte Modellierung und Simulation Ereignisbasierte Modellierung und Simulation Allgemeines Warteschlangennetze Von Zustandsautomaten zu Markowmodellen Ereignisautomaten Petrinetze DEVS Discrete Event Specification Ereignisbasierte Simulation

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 23.6.2016 Giuseppe Accaputo g@accaputo.ch 1 Programm für heute Repetition Datenstrukturen Unter anderem Fragen von gestern Point-in-Polygon Algorithmus Shortest

Mehr

Rotation. y T 3. Abbildung 3.10: Rotation nach rechts (analog links) Doppelrotation y

Rotation. y T 3. Abbildung 3.10: Rotation nach rechts (analog links) Doppelrotation y Die AVL-Eigenschaft soll bei Einfügungen und Streichungen erhalten bleiben. Dafür gibt es zwei mögliche Operationen: -1-2 Rotation Abbildung 3.1: Rotation nach rechts (analog links) -2 +1 z ±1 T 4 Doppelrotation

Mehr

Programmiertechnik II

Programmiertechnik II 2007 Martin v. Löwis Priority Queues and Heapsort 2007 Martin v. Löwis 2 Priority Queue Abstrakter Datentyp Inhalt: Elemente mit Priorität Operationen: Einfügen: Angabe des Elements und seiner Priorität

Mehr

5 Bäume. 5.1 Suchbäume. ein geordneter binärer Wurzelbaum. geordnete Schlüsselwertmenge. heißt (schwach) sortiert, g.d.w. gilt:

5 Bäume. 5.1 Suchbäume. ein geordneter binärer Wurzelbaum. geordnete Schlüsselwertmenge. heißt (schwach) sortiert, g.d.w. gilt: 5 Bäume 5.1 Suchbäume Sei ein geordneter binärer Wurzelbaum. Sei Abbildung der Knotenmenge eine in eine vollständig geordnete Schlüsselwertmenge. heißt (schwach) sortiert, g.d.w. gilt: Falls sortiert ist,

Mehr

Kombinierte Simulation

Kombinierte Simulation Kombiniert diskretkontinuierliche Simulation Kombiniert diskret-kontinuierliche Simulation kontinuierliches Verhalten spezifiziert mittels Differentialsystemen ereignisorientiertes Verhalten spezifiziert

Mehr

Prüfung Algorithmen und Datenstrukturen I

Prüfung Algorithmen und Datenstrukturen I Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IF 3 B Wintersemester 2014/15 Prüfung Algorithmen und Datenstrukturen I Datum : 20.01.2015, 10:30 Uhr

Mehr

Vorlesung und Übung. Modellierung, Simulation, Entwurf heterogener Systeme. Dr. Christoph Grimm Professur Technische Informatik

Vorlesung und Übung. Modellierung, Simulation, Entwurf heterogener Systeme. Dr. Christoph Grimm Professur Technische Informatik Vorlesung und Übung Modellierung, Simulation, Entwurf heterogener Systeme - Am Beispiel SystemC Dr. Christoph Grimm Professur Technische Informatik 1 Dr. Ch. Grimm - Modellierung und Simulation heterogener

Mehr

Punkte. Teil 1. Teil 2. Summe. 1. Zeigen Sie, dass der untenstehende Suchbaum die AVL-Bedingung verletzt und überführen Sie ihn in einen AVL-Baum.

Punkte. Teil 1. Teil 2. Summe. 1. Zeigen Sie, dass der untenstehende Suchbaum die AVL-Bedingung verletzt und überführen Sie ihn in einen AVL-Baum. Hochschule der Medien Prof Uwe Schulz 1 Februar 2007 Stuttgart Klausur Informatik 2, EDV-Nr 40303/42022 Seite 1 von 2 Name: Matr Nr: Teil 1: Keine Hilfsmittel Bearbeitungszeit: 20 Minuten Teil 1 Teil 2

Mehr

Lösungsvorschläge zur Hauptklausur Datenstrukturen

Lösungsvorschläge zur Hauptklausur Datenstrukturen Lösungsvorschläge zur Hauptklausur 9 9 166211663 Datenstrukturen 9. August 2003 Seite 2 Lösungsvorschlage zur Klausur vom 9.08.2003 Kurs 166211663,,Datenstrukturen" Aufgabe 1 Bei jedem rekursiven Aufruf

Mehr

Prüfung Algorithmen und Datenstrukturen I

Prüfung Algorithmen und Datenstrukturen I Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IF 3 B Wintersemester 2016/17 Prüfung Algorithmen und Datenstrukturen I Datum : 23.01.2017, 08:30 Uhr

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Breitensuche, Tiefensuche Wir besprechen nun zwei grundlegende Verfahren, alle Knoten eines Graphen zu

Mehr

Sprachen und Modellierungssysteme der diskrete Simulation

Sprachen und Modellierungssysteme der diskrete Simulation Sprachen und Modellierungssysteme der diskrete Simulation Standard-Programmiersprachen Prozessorientierte Transaktionsorientierte Sprachen und Systeme Petri-Netze Sprachen und Systeme für diskrete Modellierung

Mehr

VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 VHDL Simulation Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 VHDL Simulation 1/20 2011-05-18 Motivation Der Simulationsalgorithmus

Mehr

! 1. Rekursive Algorithmen.! 2. Rekursive (dynamische) Datenstrukturen. II.3.2 Rekursive Datenstrukturen - 1 -

! 1. Rekursive Algorithmen.! 2. Rekursive (dynamische) Datenstrukturen. II.3.2 Rekursive Datenstrukturen - 1 - ! 1. Rekursive Algorithmen! 2. Rekursive (dynamische) Datenstrukturen II.3.2 Rekursive Datenstrukturen - 1 - Ausdruck Ausdruck Grundwert ( Typ ) Präfix-Operator Name Methodenaufruf [ Ausdruck ] ( Ausdruck

Mehr

7. Sortieren Lernziele. 7. Sortieren

7. Sortieren Lernziele. 7. Sortieren 7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 15. Jan Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 15. Jan Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10 Universität Augsburg, Institut für Informatik WS 009/010 Prof. Dr. W. Kießling 15. Jan. 010 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 10 Aufgabe 1: B-Bäume Datenbanksysteme I a) Abschätzen der Höhe

Mehr

Denition: Rang eines Elements e einer Folge s = Position von e in sort(s) (angefangen bei 1). Frage: warum ist r nicht notwendig eindeutig?

Denition: Rang eines Elements e einer Folge s = Position von e in sort(s) (angefangen bei 1). Frage: warum ist r nicht notwendig eindeutig? 207 Auswahl (Selection) Denition: Rang eines Elements e einer Folge s = Position von e in sort(s) (angefangen bei 1). Frage: warum ist r nicht notwendig eindeutig? // return an element of s with rank k

Mehr

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 29.05.2011 Das Postamt-Problem b(p, q) = {x R 2 : xp = xq } p q h(p, q) h(q, p) = {x :

Mehr

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm Inhalte Sequenzdiagramm Kollaborationsdiagramm Dynamisches Modell Seite 1 Sequenzdiagramm Ein Sequenzdiagramm beschreibt die zeitliche Abfolge von Interaktionen zwischen einer Menge von Objekten innerhalb

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Binärbaum Suchbaum Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 356 Datenstruktur Binärbaum Strukturrepräsentation des mathematischen Konzepts Binärbaum

Mehr

13. Bäume: effektives Suchen und Sortieren

13. Bäume: effektives Suchen und Sortieren 13. Bäume: effektives Suchen und Sortieren Java-Beispiele: Baum.java Traverse.java TraverseTest.java Version: 25. Jan. 2016 Schwerpunkte Aufgabe und Vorteile von Bäumen Sortieren mit Bäumen Ausgabealgorithmen:

Mehr

Counting - Sort [ [ ] [ [ ] 1. SS 2008 Datenstrukturen und Algorithmen Sortieren in linearer Zeit

Counting - Sort [ [ ] [ [ ] 1. SS 2008 Datenstrukturen und Algorithmen Sortieren in linearer Zeit Counting-Sort Counting - Sort ( A,B,k ). for i to k. do C[ i]. for j to length[ A]. do C[ A[ j ] C[ A[ j ] +. > C[ i] enthält Anzahl der Elemente in 6. for i to k. do C[ i] C[ i] + C[ i ]. > C[ i] enthält

Mehr

21. Greedy Algorithmen. Aktivitätenauswahl, Fractional Knapsack Problem, Huffman Coding Cormen et al, Kap. 16.1, 16.3

21. Greedy Algorithmen. Aktivitätenauswahl, Fractional Knapsack Problem, Huffman Coding Cormen et al, Kap. 16.1, 16.3 581 21. Greedy Algorithmen Aktivitätenauswahl, Fractional Knapsack Problem, Huffman Coding Cormen et al, Kap. 16.1, 16.3 Aktivitäten Auswahl 582 Koordination von Aktivitäten, die gemeinsame Resource exklusiv

Mehr

13. Bäume: effektives Suchen und Sortieren

13. Bäume: effektives Suchen und Sortieren Schwerpunkte Aufgabe und Vorteile von Bäumen 13. Bäume: effektives Suchen und Sortieren Java-Beispiele: Baum.java Traverse.java TraverseTest.java Sortieren mit Bäumen Ausgabealgorithmen: - Preorder - Postorder

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

Strukturiertes Programmieren

Strukturiertes Programmieren Friedrich-Schiller-Universität Jena Fakultät für Mathematik und Informatik Institut für Informatik Prof. Dr. E.-G. Schukat-Talamazzini http://www.minet.uni-jena.de/fakultaet/schukat/ Prof. Dr. P. Dittrich

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Heaps Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 469 Prioritätswarteschlange Problem Häufig ist das Prinzip einer einfachen Warteschlangen-Datenstruktur

Mehr

Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt

Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Aufgaben zur Klausur Objektorientierte Programmierung im WS 2003/04 (IA 252) Zeit: 90 Minuten erlaubte Hilfsmittel: keine

Mehr

Wiederholung. Bäume sind zyklenfrei. Rekursive Definition: Baum = Wurzelknoten + disjunkte Menge von Kindbäumen.

Wiederholung. Bäume sind zyklenfrei. Rekursive Definition: Baum = Wurzelknoten + disjunkte Menge von Kindbäumen. Wiederholung Baum: Gerichteter Graph, der die folgenden drei Bedingungen erfüllt: Es gibt einen Knoten, der nicht Endknoten einer Kante ist. (Dieser Knoten heißt Wurzel des Baums.) Jeder andere Knoten

Mehr

ContainerDatenstrukturen. Große Übung 4

ContainerDatenstrukturen. Große Übung 4 ContainerDatenstrukturen Große Übung 4 Aufgabenstellung Verwalte Kollektion S von n Objekten Grundaufgaben: Iterieren/Auflistung Suche nach Objekt x mit Wert/Schlüssel k Füge ein Objekt x hinzu Entferne

Mehr

5.5 Prioritätswarteschlangen

5.5 Prioritätswarteschlangen 5.5 Prioritätswarteschlangen LIFO- und FIFO-Warteschlangen entfernen Werte aus der Warteschlange in Abhängigkeit davon, wann sie in diese eingefügt wurden Prioritätswartschlangen interpretieren die Werte

Mehr

3.2. Divide-and-Conquer-Methoden

3.2. Divide-and-Conquer-Methoden LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE 3.2. Divide-and-Conquer-Methoden Divide-and-Conquer-Methoden Einfache Sortieralgorithmen reduzieren die Größe des noch

Mehr

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x

Mehr

16. Dynamische Datenstrukturen

16. Dynamische Datenstrukturen Datenstrukturen 6. Dynamische Datenstrukturen Eine Datenstruktur organisiert Daten so in einem Computer, dass man sie effizient nutzen kann. Verkettete Listen, Abstrakte Datentypen Stapel, Warteschlange

Mehr

Datenstrukturen und Algorithmen. 7. Suchen in linearen Feldern

Datenstrukturen und Algorithmen. 7. Suchen in linearen Feldern Datenstrukturen und Algorithmen 7. Suchen in linearen Feldern VO 708.031 Suchen in linearen Feldern robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische

Mehr

1. Rekursive Algorithmen 2. Rekursive (dynamische) Datenstrukturen

1. Rekursive Algorithmen 2. Rekursive (dynamische) Datenstrukturen 1. Rekursive Algorithmen 2. Rekursive (dynamische) Datenstrukturen II.3.2 Rekursive Datenstrukturen - 1 - Grundwert ( Typ ) Präfix-Operator Name Methodenaufruf [ ] ( ) Infix-Operator Methodenaufruf new

Mehr

Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchverfahren Autor: Stefan Edelkamp / Sven Schuierer

Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchverfahren Autor: Stefan Edelkamp / Sven Schuierer Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchverfahren Autor: Stefan Edelkamp / Sven Schuierer Institut für Informatik Georges-Köhler-Allee Albert-Ludwigs-Universität Freiburg

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 9.6.2017 Giuseppe Accaputo g@accaputo.ch 1 Aufbau des PVK Tag 1: Java Teil 1 Tag 2: Java Teil 2 Tag 3: Algorithmen & Komplexität Tag 4: Dynamische Datenstrukturen,

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 17 (8.7.2014) Minimale Spannbäume II Union Find, Prioritätswarteschlangen Algorithmen und Komplexität Minimaler Spannbaum Gegeben: Zus. hängender,

Mehr

7 Weitere Baumstrukturen und Heapstrukturen

7 Weitere Baumstrukturen und Heapstrukturen 7 Weitere Baumstrukturen und Heapstrukturen Man kann kurze Suchzeiten in Baumstrukturen erreichen durch Rebalancierung bei Einfügungen und Löschungen (AVL Bäume, gewichtsbalancierte Bäume, Bruderbäume,

Mehr

Endliche Automaten. Minimierung. Karin Haenelt. Karin Haenelt, 2004, FSA-Minimierung, ( )

Endliche Automaten. Minimierung. Karin Haenelt. Karin Haenelt, 2004, FSA-Minimierung, ( ) Endliche Automaten Minimierung Karin Haenelt 1 Inhalt Vorteile eines Minimalautomaten Fälle für die Minimierung Minimierungsalgorithmus für deterministische endliche Automaten (mit totaler Übergangsfunktion)

Mehr

Einführung in die Programmierung II. 9. Dynamische Datenstrukturen: Binärbäume

Einführung in die Programmierung II. 9. Dynamische Datenstrukturen: Binärbäume -1- Einführung in die Programmierung II 9. Dynamische Datenstrukturen: Binärbäume Thomas Huckle, Stefan Zimmer 20. 6. 2007 Binärbäume Als Beispiel für eine interessantere dynamische Datenstruktur sehen

Mehr

11. Elementare Datenstrukturen

11. Elementare Datenstrukturen 11. Elementare Datenstrukturen Definition 11.1: Eine dynamische Menge ist gegeben durch eine oder mehrer Mengen von Objekten sowie Operationen auf diesen Mengen und den Objekten der Mengen. Dynamische

Mehr

Modellgestützte Analyse und Optimierung Übungsblatt 4

Modellgestützte Analyse und Optimierung Übungsblatt 4 Fakultät für Informatik Lehrstuhl 4 Peter Buchholz, Jan Kriege Sommersemester 2015 Modellgestützte Analyse und Optimierung Übungsblatt 4 Ausgabe: 27.04.2015, Abgabe: 04.05.2015 (12 Uhr) Aufgabe 4.1: Verteilungsfunktionen

Mehr

Suchen und Sortieren Sortieren. Heaps

Suchen und Sortieren Sortieren. Heaps Suchen und Heaps (Folie 156, Seite 56 im Skript) Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die letzte Ebene vollständig besetzt ist,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen B4. Priority Queues und Heaps Marcel Lüthi and Gabriele Röger Universität Basel 28. März 2018 Einführung Kollektion von Elementen Grundlegende Operationen sind Einfügen

Mehr

Informatik II Vorlesung am D-BAUG der ETH Zürich

Informatik II Vorlesung am D-BAUG der ETH Zürich Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 9, 2.5.2016 [Nachtrag zu Vorlesung : Numerische Integration, Zusammenfassung Objektorientierte Programmierung] Dynamische Datenstrukturen II:

Mehr

Binärbäume: Beispiel

Binärbäume: Beispiel Binärbäume Als Beispiel für eine interessantere dynamische Datenstruktur sehen wir uns jetzt Binärbäume an Ein Binärbaum wird rekursiv definiert: Er ist leer oder besteht aus einem Knoten (die Wurzel des

Mehr

Datenstrukturen und Algorithmen. Vorlesung 8

Datenstrukturen und Algorithmen. Vorlesung 8 Datenstrukturen und Algorithmen Vorlesung 8 Inhaltsverzeichnis Vorige Woche: ADT Stack ADT Queue Heute betrachten wir: ADT Deque ADT Prioritätsschlange Binomial-Heap Schriftliche Prüfung Informationen

Mehr

B6.1 Introduction. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B6.1 Introduction. B6.3 Analyse. B6.4 Ordnungsbasierte Methoden

B6.1 Introduction. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B6.1 Introduction. B6.3 Analyse. B6.4 Ordnungsbasierte Methoden Algorithmen und Datenstrukturen 11. April 2018 B6. Binäre Suchbäume a Algorithmen und Datenstrukturen B6. Binäre Suchbäume 1 Marcel Lüthi and Gabriele Röger Universität Basel 11. April 2018 a Folien basieren

Mehr

4. Lernen von Entscheidungsbäumen

4. Lernen von Entscheidungsbäumen 4. Lernen von Entscheidungsbäumen Entscheidungsbäume 4. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr.

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Suchen. Lineare Suche. Such-Algorithmen. Sommersemester Dr. Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 0 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Fortgeschrittene Datenstrukturen Such-Algorithmen

Mehr

Teil VII. Hashverfahren

Teil VII. Hashverfahren Teil VII Hashverfahren Überblick 1 Hashverfahren: Prinzip 2 Hashfunktionen 3 Kollisionsstrategien 4 Aufwand 5 Hashen in Java Prof. G. Stumme Algorithmen & Datenstrukturen Sommersemester 2009 7 1 Hashverfahren:

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2017/18. Pro f. Dr. Sán do r Fe k e te

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2017/18. Pro f. Dr. Sán do r Fe k e te Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2017/18 Pro f. Dr. Sán do r Fe k e te 1 4.1 Grundoperationen Aufgabenstellung: 3 4.1 Grundoperationen Aufgabenstellung: Verwalten

Mehr

8.1.3 Operation Build-Max-Heap Operation zur Konstruktion eines Heaps Eingabe: Feld A[1..n], n = länge(a) BUILD-MAX-HEAP (A)

8.1.3 Operation Build-Max-Heap Operation zur Konstruktion eines Heaps Eingabe: Feld A[1..n], n = länge(a) BUILD-MAX-HEAP (A) Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld

Mehr

Copyright, Page 1 of 7 Heapsort

Copyright, Page 1 of 7 Heapsort www.mathematik-netz.de Copyright, Page 1 of 7 Heapsort Alle grundlegenden, allgemeinen Sortierverfahren benötigen O(n 2 ) Zeit für das Sortieren von n Schlüsseln. Die kritischen Operationen, d.h. die Auswahl

Mehr

Technische Universität München

Technische Universität München Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld

Mehr

Grundlagen der Informatik / Algorithmen und Datenstrukturen. Aufgabe 143

Grundlagen der Informatik / Algorithmen und Datenstrukturen. Aufgabe 143 Aufgabe 143 Aufgabe 143 Aufgabenstellung Gegeben ist der folgende AVL-Baum: a) Fügen Sie in diesen AVL-Baum nacheinander Knoten mit den Inhalten 34, 42, 1701 und 30 ein. Führen Sie die ggf. notwendigen

Mehr

Algorithmen und Datenstrukturen Heapsort

Algorithmen und Datenstrukturen Heapsort Algorithmen und Datenstrukturen 2 5 Heapsort In diesem Kapitel wird Heapsort, ein weiterer Sortieralgorithmus, vorgestellt. Dieser besitzt wie MERGE-SORT eine Laufzeit von O(n log n), sortiert jedoch das

Mehr

Einführung in die Objektorientierte Programmierung Vorlesung 18: Lineare Datenstrukturen. Sebastian Küpper

Einführung in die Objektorientierte Programmierung Vorlesung 18: Lineare Datenstrukturen. Sebastian Küpper Einführung in die Objektorientierte Programmierung Vorlesung 18: Lineare Datenstrukturen Sebastian Küpper Unzulänglichkeit von Feldern Wenn ein Unternehmen alle Rechnungen eines Jahres verwalten möchte,

Mehr

9. Natürliche Suchbäume

9. Natürliche Suchbäume Bäume Bäume sind. Natürliche Suchbäume [Ottman/Widmayer, Kap..1, Cormen et al, Kap. 12.1-12.] Verallgemeinerte Listen: Knoten können mehrere Nachfolger haben Spezielle Graphen: Graphen bestehen aus Knoten

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2017 Patrick Schäfer, Humboldt-Universität zu Berlin Agenda 1. Sortierte Listen 2. Stacks & Queues 3. Teile und Herrsche Nächste Woche: Vorrechnen (first-come-first-served)

Mehr

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden,

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden, Fakultät Informatik, Institut für Angewandte Informatik, Professur Modellierung und Simulation Einführung in die Simulation Dr. Christoph Laroque Wintersemester 11/12 Dresden, 15.11.2011 15.11.2011 Einführung

Mehr

Mehrwegbäume Motivation

Mehrwegbäume Motivation Mehrwegbäume Motivation Wir haben gute Strukturen (AVL-Bäume) kennen gelernt, die die Anzahl der Operationen begrenzen Was ist, wenn der Baum zu groß für den Hauptspeicher ist? Externe Datenspeicherung

Mehr

Logische Datenstrukturen

Logische Datenstrukturen Lineare Listen Stapel, Warteschlangen Binärbäume Seite 1 Lineare Liste Begriffe first Funktion: sequentielle Verkettung von Datensätzen Ordnungsprinzip: Schlüssel Begriffe: first - Anker, Wurzel; Adresse

Mehr

Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15.

Kurs 1663 Datenstrukturen Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom 15.08.98 Seite 1 Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. August 1998 Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur

Mehr

Klausur zur Vorlesung Algorithmen und Datenstrukturen

Klausur zur Vorlesung Algorithmen und Datenstrukturen Klausur zur Vorlesung Algorithmen und Datenstrukturen Die Dauer der Klausur beträgt 120 Minuten. Erlaubte Hilfsmittel: Ein selbst handschriftlich beschriebenes DIN A4 Blatt, das komplette Skript zur Vorlesung

Mehr

3.3 Strategien zur Ablaufsteuerung

3.3 Strategien zur Ablaufsteuerung 3.3 Strategien zur Ablaufsteuerung Prinzip der Trennung von Strategie (Richtlinie, policy) und Mechanismus (mechanism) bedeutet bei der Prozessverwaltung class Process {... static Set readylist

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 11 (1.6.2016) Binäre Suchbäume III Algorithmen und Komplexität Tiefe eines binären Suchbaums Worst-Case Laufzeit der Operationen in binären

Mehr

14. Rot-Schwarz-Bäume

14. Rot-Schwarz-Bäume Bislang: Wörterbuchoperationen bei binären Suchbäume effizient durchführbar, falls Höhe des Baums klein. Rot-Schwarz-Bäume spezielle Suchbäume. Rot-Schwarz-Baum mit n Knoten hat Höhe höchstens 2 log(n+1).

Mehr

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads Prozesse und Prozessmanagement des BS 1 Unterschied Prozess, Threads 1.1 Prozess Bei jedem Programm muss gespeichert werden, welche Betriebsmittel (Speicherplatz, CPU- Zeit, CPU-Inhalt,...) es benötigt.

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Breitensuche, Tiefensuche Wir besprechen nun zwei grundlegende Verfahren, alle Knoten eines Graphen zu

Mehr

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array Das Suchproblem Gegeben. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.-3,2.2-3,2.3-] Menge von Datensätzen. Beispiele

Mehr

Endliche Automaten 1 WS 00/01. Steuerautomaten

Endliche Automaten 1 WS 00/01. Steuerautomaten Endliche Automaten 1 WS 00/01 Steuerautomaten Steuerautomaten dienen zur Erzeugung von Steuersignalen. Die erzeugten Steuersignale hängen vom Bearbeitungsstand ("Zustand") der Aufgabe und von Eingangsgrößen

Mehr

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden,

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden, Fakultät Informatik, Institut für Angewandte Informatik, Professur Modellierung und Simulation Einführung in die Simulation Dr. Christoph Laroque Wintersemester 11/12 Dresden, 08.11.2011 15.11.2011 Einführung

Mehr

INSERTION-SORT: Ja, Es wird immer das erste, kleinste Element an die neue Liste angehängt.

INSERTION-SORT: Ja, Es wird immer das erste, kleinste Element an die neue Liste angehängt. Aufgabe 1 INSERTION-SORT: Ja, Es wird immer das erste, kleinste Element an die neue Liste angehängt. QUICK-SORT: Hängt davon ab ob PARTITION stabil ist. MERGE-SORT: Ja, Splitten, sowie Mergen ist stabil.

Mehr

Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt

Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Aufgaben zur Klausur C und Objektorientierte Programmierung im WS 2003/04 (WI h103, II h105, MI h353) Zeit: 150 Minuten erlaubte Hilfsmittel:

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2018 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München Organisatorisches: Keine Vorlesung nächste Woche wegen

Mehr

4.2 Fibonacci-Heaps Aufbau Potenzialfunktion. Knoten v hat folgende Felder:

4.2 Fibonacci-Heaps Aufbau Potenzialfunktion. Knoten v hat folgende Felder: 4.2 Fibonacci-Heaps 4.2.1 Aufbau Knoten v hat folgende Felder: Vaterzeiger p(v) Zeiger auf linkes Geschwister: prev(v) Zeiger auf rechtes Geschwister: next(v) Kindzeiger: child(v) Schlüssel: key: aus U

Mehr