Übung Algorithmen und Datenstrukturen
|
|
- Caroline Busch
- vor 6 Jahren
- Abrufe
Transkript
1 Übung Algorithmen und Datenstrukturen Sommersemester 2015 Marc Bux, Humboldt-Universität zu Berlin
2 Agenda Schreibtischtest zu Suchverfahren Amortisierte Analyse Max-Heaps und HeapSort 2
3 Agenda Schreibtischtest zu Suchverfahren Amortisierte Analyse Max-Heaps und HeapSort 3
4 Aufgabe Schreibtischtests zu Suchverfahren 4
5 Agenda Schreibtischtest zu Suchverfahren Amortisierte Analyse Max-Heaps und HeapSort 5
6 Binärzähler Geg.: k-bit Binärzähler Array von k Bits b 0, b 1,, b k 1 Entspricht Binärzahl b k 1 b 1 b 0 bzw. Dezimalzahl i b i 2 i Operation: Zahl inkrementieren D. h. Addition von 1 Kosten = Anzahl der Bitänderungen jedes Bit kostet 1 n b 7 b 6 b 5 b 4 b 3 b 2 b 1 b Bitwechsel n b 7 b 6 b 5 b 4 b 3 b 2 b 1 b Bitwechsel 6
7 Binärzähler Kostenabschätzung Gesucht: Kosten für n Inkrement-Operationen, wenn Zähler bei 0 beginnt Best-case: 1 Bitwechsel Worst-case: Alle Bits werden verändert k Ergibt Kosten: n k = O(nk) Problem sehr pessimistische Abschätzung, da Worst-case eher selten n b 7 b 6 b 5 b 4 b 3 b 2 b 1 b k Bitwechsel 7
8 Binärzähler Kostenabschätzung (2) n b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 #BW Gesamt n #BW kn Häufig geringe Kosten Abschätzung zu pessimistisch 8
9 Amortisierte Analyse Amortisation (frz. amortir, tilgen ): Anfängliche Aufwendungen für spätere Erträge Gegeben: Datenstruktur D, Operationen Q Ziel: Zeit- oder Speicherkomplexität einer Datenstruktur im schlechtesten Fall ermitteln Bessere obere Schranken der Laufzeit bei n Operationen (Amortisierter Worst-case) Voraussetzungen: nicht alle Operationen sind teuer teure Operationen benötigen viele vorangehende günstigere Mehrere Vorgehensweisen: Guthabenmethode (Bankkontomethode) Potentialmethode Grundidee: Anfängliche (eigentlich günstige) Operation teurer bewerten um spätere (teure) Operationen auszugleichen 9
10 Potentialmethode Potentialfunktion Φ: D i R ordnet jedem Zustand der Datenstruktur ein Potential zu Seien c i die realen Kosten der i-ten Operation Amortisierte Kosten d i = c i + Φ D i Φ D i 1 ergibt sich aus den realen Kosten und dem Potentialzuwachs Amortisierte Gesamtkosten: n i=1 d i n = c i + Φ D i Φ D i 1 = i=1 n i=1 c i + Φ D n Φ D 0 Ziel: Finde eine Potentialfunktion Φ, so dass 1. Φ D von einer Eigenschaft von D abhängt, 2. Φ D i Φ D 0, 3. d i lässt sich für alle i berechnen. Dann sind die amortisierten Gesamtkosten obere Schranke für die tatsächlichen Gesamtkosten Herangehensweise: Ermitteln einer Potentialfunktion, die hinreichend (aber nicht unnötig viel) Potential für spätere teure Operationen sammelt 10
11 Potentialmethode Binärzähler Φ(D i ): Anzahl der Einsen im Zähler In der i-ten Operation springen t i Bits auf 0 und 0-1 Bits auf 1 Es folgt: c i t i + 1 Falls Φ D i = 0, so ist Φ D i 1 = k Falls Φ D i > 0, so ist Φ D i Φ D i 1 t i + 1 In beiden Fällen gilt Φ D i Φ D i 1 t i + 1 Es folgt: d i = c i + Φ D i Φ D i 1 d i t i Φ D i 1 t i + 1 Φ D i 1 2 Es gilt: 1. Φ D hängt von einer Eigenschaft von D ab, 2. Φ D i Φ D 0, 3. d i 2. n i=1 d i 2n Ο n ist obere Schranke für die Komplexität 11
12 Aufgabe Dynamische Arrays Dynamisches Array: Größe des Arrays wird verdoppelt, wenn es voll ist Beispiel: Datenstruktur ArrayList in Java Kosten bei Folge von Push-Operationen: By ScottDNelson (Own work) [CC BY-SA 4.0 ( via Wikimedia Commons 12
13 Potentialmethode Dynamische Arrays Aufgabe: Analysieren Sie mittels der Potentialmethode die Worst-Case-Komplexität eines Dynamischen Arrays, in welches n Elemente eingefügt werden. Zur Erinnerung: Die Potentialfunktion sollte von der Datenstruktur abhängen, das Potential der initialisierten Datenstruktur niemals unterschritten wird und hinreichend (aber nicht unnötig viel) Potential für teure Operationen sammeln. Sei m die aktuelle Größe des Arrays; Φ D i = 2 n m 2 Falls n < m, dann ist c i = 1, Φ D i Φ D i 1 = 2 und damit d i = = 3 Falls n = m, dann ist c i = 1 + m, Φ D i Φ D i 1 = 2 m und damit d i = 1 + m + 2 m = 3 n i=1 d i 3n Ο n ist obere Schranke für die Komplexität 13
14 Agenda Schreibtischtest zu Suchverfahren Amortisierte Analyse Max-Heaps und HeapSort 14
15 Aufgabe MaxHeaps und HeapSort Sortieren Sie das Array A = [17,48,1,2,9,18,17,29,22,5,56,34] mit Hilfe des Algorithmus HeapSort. 15
16 Ausblick: Nächste Woche Rückgabe der Abgaben zum dritten Übungsblatt Besprechung der Bewertung zum dritten Übungsblatt Besprechung der Lösungen des vierten Übungsblatts Vorstellen der Aufgaben des fünften Übungsblatts Fragen?
1. Musterlösung. Problem 1: Average-case-Laufzeit vs. Worst-case-Laufzeit
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner Musterlösung Problem : Average-case-Laufzeit vs Worst-case-Laufzeit pt (a) Folgender Algorithmus löst das Problem der
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
Mehr3 Amortisierte Analyse
(M. Dietzfelbinger,.2.20) 3 Amortisierte Analyse Wir betrachten hier ein Analyseproblem, das oft bei Datenstrukturen, mitunter auch in anderen algorithmischen Situationen auftritt. Angenommen, wir haben
Mehr3. Übung Algorithmen I
Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der
MehrSuchen und Sortieren Sortieren. Heaps
Suchen und Heaps (Folie 245, Seite 63 im Skript) 3 7 21 10 17 31 49 28 14 35 24 42 38 Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die
Mehr4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04
4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04 JOACHIM VON ZUR GATHEN, OLAF MÜLLER, MICHAEL NÜSKEN Abgabe bis Freitag, 14. November 2003, 11 11 in den jeweils richtigen grünen oder roten Kasten
Mehra) Da die Zahlen im IEEE-32Bit-Format dargestellt werden sollen, ist der Bias = 127.
Übung 2, Aufgabe 4) a) Da die Zahlen im IEEE-32Bit-Format dargestellt werden sollen, ist der Bias = 127. 1,125 in IEEE 754 (32Bit) 0,125 2 = 0,25 0,25 2 = 0,5 0,5 2 = 1 1,125 10 = 1,001 2 Da die Zahl bereits
MehrEntscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
MehrAlgorithmik - Kompaktkurs
Algorithmik - Kompaktkurs Sommersemester 2012 Steffen Lange 0/1, Folie 1 2012 Prof. Steffen Lange - HDa/FbI - Algorithmik Organisatorisches Vorlesung Folien im Netz (/* bitte zur Vorlesung mitbringen */)
Mehr5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!
MehrFibonacci-Heaps und Amortisierte Analyse
Kapitel 6 Fibonacci-Heaps und Amortisierte Analyse Der Fibonacci-Heap dient als eine Implementierung für die abstrakte Datenstruktur Priority Queue und wurde von Michael L. Fredman and Robert E. Tarjan
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Algorithmen und Datenstrukturen Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt aus der Vorlesung
MehrProgrammiertechnik II
Bäume Symboltabellen Suche nach Werten (items), die unter einem Schlüssel (key) gefunden werden können Bankkonten: Schlüssel ist Kontonummer Flugreservierung: Schlüssel ist Flugnummer, Reservierungsnummer,...
MehrCodes und Informationsgehalt
Aufgaben 2 Codes und Informationsgehalt Auf wie viele Dezimalziffern genau können vorzeichenlose ganze Zahlen in einem binären Code der Länge 32 bit dargestellt werden? 2 Codes und Informationsgehalt Auf
MehrAlgorithmen zur Integer-Multiplikation
Algorithmen zur Integer-Multiplikation Multiplikation zweier n-bit Zahlen ist zurückführbar auf wiederholte bedingte Additionen und Schiebeoperationen (in einfachen Prozessoren wird daher oft auf Multiplizierwerke
MehrInformatik I WS 07/08 Tutorium 24
Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 15.11.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Review / Organisatorisches o Probleme bei Foliendownload?
MehrSuchen und Sortieren (Die klassischen Algorithmen)
Suchen und Sortieren (Die klassischen Algorithmen) Lineare Suche und Binäre Suche (Vorbedingung und Komplexität) Sortieralgorithmen (allgemein) Direkte Sortierverfahren (einfach aber langsam) Schnelle
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrKapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung
Kapitel 6 Komplexität von Algorithmen 1 6.1 Beurteilung von Algorithmen I.d.R. existieren viele Algorithmen, um dieselbe Funktion zu realisieren. Welche Algorithmen sind die besseren? Betrachtung nicht-funktionaler
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben. Präsenzaufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
MehrName:... Vorname:... Matrikel-Nr.:... Unterschrift:...
Studiengang Bachelor of Computer Science Modulprüfung Praktische Informatik 1 Wintersemester 2010 / 2011 Name:... Vorname:... Matrikel-Nr.:... Unterschrift:... Hinweise: 1.) Schreiben Sie Ihren Namen und
MehrAlgorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18.
Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 9, Dienstag 18. Dezember 2012 (Performance Tuning, Profiling, Maschinencode) Prof. Dr.
Mehr1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert
Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume
MehrÜbersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)
Datenstrukturen und Algorithmen Vorlesung 9: (K7) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.rwth-aachen.de/i2/dsal0/ Algorithmus 8. Mai 200 Joost-Pieter
MehrAlgorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015. Vorlesung 5, Donnerstag, 20.
Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015 Vorlesung 5, Donnerstag, 20. November 2014 (Wie baut man eine Hash Map, Universelles Hashing)
MehrMathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens
Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................
Mehr4 Greedy-Algorithmen (gierige Algorithmen)
Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine
MehrLaufzeit und Komplexität
Laufzeit und Komplexität Laufzeit eines Algorithmus Benchmarking versus Analyse Abstraktion Rechenzeit, Anzahl Schritte Bester, Mittlerer, Schlechtester Fall Beispiel: Lineare Suche Komplexitätsklassen
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 5 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrLösungen: zu 1. a.) 0 0 1 1 b.) 1 1 1 1 c.) 0 1 1 0 + 1 1 0 0 + 0 0 1 1 + 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1
Lösungen: zu 1. a.) 0 0 1 1 b.) 1 1 1 1 c.) 0 1 1 0 + 1 1 0 0 + 0 0 1 1 + 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 vorzeichenlose Zahl: 15 vorzeichenlose Zahl: 18 vorzeichenlose Zahl: 13 Zweierkomplement: - 1
MehrUebersicht. Webpage & Ilias. Administratives. Lehrbuch. Vorkenntnisse. Datenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Uebersicht Administratives Einleitung Ein einführendes Beispiel Matthias Zwicker Universität Bern Frühling 2010 2 Administratives Dozent Prof. Zwicker, zwicker@iam.unibe.ch
MehrMethoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen
Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen Christian Scheideler SS 2009 16.07.2009 Kapitel 2 1 Übersicht Notation Paging Selbstorganisierende Suchstrukturen Finanzielle
MehrProgrammiertechnik II
Analyse von Algorithmen Algorithmenentwurf Algorithmen sind oft Teil einer größeren Anwendung operieren auf Daten der Anwendung, sollen aber unabhängig von konkreten Typen sein Darstellung der Algorithmen
MehrMikro-Controller-Pass 1
MikroControllerPass Lernsysteme MC 805 Seite: (Selbststudium) Inhaltsverzeichnis Vorwort Seite 2 Addition Seite 3 Subtraktion Seite 4 Subtraktion durch Addition der Komplemente Dezimales Zahlensystem:Neunerkomplement
MehrKONSTRUKTION VON ROT-SCHWARZ-BÄUMEN
KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN RALF HINZE Institut für Informatik III Universität Bonn Email: ralf@informatik.uni-bonn.de Homepage: http://www.informatik.uni-bonn.de/~ralf Februar, 2001 Binäre Suchbäume
MehrUndirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time
Universität Konstanz Mathematisch-naturwissenschaftliche Sektion Fachbereich Mathematik und Statistik Wintersemester 2001/02 Mikkel Thorup: Undirected Single-Source Shortest Paths with Positive Integer
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2010
MehrEinführung in die Programmierung
Technische Universität Carolo Wilhelmina zu Brauschweig Institut für rechnergestützte Modellierung im Bauingenierwesen Prof. Dr.-Ing. habil. Manfred Krafczyk Pockelsstraße 3, 38106 Braunschweig http://www.irmb.tu-bs.de
MehrWirtschaftsinformatik I
Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation
MehrEinführung in die Informatik 1
Einführung in die Informatik 1 Datenorganisation und Datenstrukturen Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00
MehrLösung 1. Übungsblatt
Fakultät Informatik, Technische Informatik, Professur für Mikrorechner Lösung 1. Übungsblatt Konvertierung von Zahlendarstellungen verschiedener Alphabete und Darstellung negativer Zahlen Stoffverteilung
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 5 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrIn vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut.
Binäre Suchbäume Tries (Folie 182, Seite 58 im Skript) In vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut. In Tries entspricht die ite Verzweigung dem iten Zeichen des Schlüssels.
MehrAVL-Bäume Analyse. Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl:
AVL-Bäume Analyse (Folie 85, Seite 39 im Skript) Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl: 0 falls n = 0 F n = 1 falls
MehrSpezialvorlesung Online-Algorithmen. Matthias Westermann Berthold Vöcking Christian Sohler
Spezialvorlesung Online-Algorithmen Matthias Westermann Berthold Vöcking Christian Sohler Sommersemester 2005 Inhaltsverzeichnis 1 Einleitung 3 1.1 Grundbegriffe.............................. 4 1.2 Amortisierte
MehrArchitektur verteilter Anwendungen
Architektur verteilter Anwendungen Schwerpunkt: verteilte Algorithmen Algorithmus: endliche Folge von Zuständen Verteilt: unabhängige Prozessoren rechnen tauschen Informationen über Nachrichten aus Komplexität:
Mehr4 Algorithmen und Datenstrukturen
4 Algorithmen und Datenstrukturen Algorithmen sind Verfahren zur schrittweisen Lösung von Problemen. Sie können abstrakt, d.h. unabhängig von konkreten Rechnern oder Programmiersprachen, beschrieben werden.
MehrDatentypen: Enum, Array, Struct, Union
Datentypen: Enum, Array, Struct, Union C-Kurs 2013, 2. Tutorium Freitagsrunde http://wiki.freitagsrunde.org 10. September 2013 This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
Mehr1. Grundlagen... 2. 2. Sortieren... 6. 1.1. Vertauschen... 13. 1.2. Selektion... 16. 1.3. Einfügen... 19. 1.4. Quicksort... 22. 3. Suchen...
Suchen und Sortieren In diesem Kapitel behandeln wir Algorithmen zum Suchen und Sortieren Inhalt 1. Grundlagen... 2 2. Sortieren... 6 1.1. Vertauschen... 13 1.2. Selektion... 16 1.3. Einfügen... 19 1.4.
MehrApproximationsalgorithmen
Makespan-Scheduling Kapitel 4: Approximationsalgorithmen (dritter Teil) (weitere Beispiele und Illustrationen an der Tafel) Hilfreiche Literatur: Vazarani: Approximation Algorithms, Springer Verlag, 2001.
MehrZahlensysteme Seite -1- Zahlensysteme
Zahlensysteme Seite -- Zahlensysteme Inhaltsverzeichnis Dezimalsystem... Binärsystem... Umrechnen Bin Dez...2 Umrechnung Dez Bin...2 Rechnen im Binärsystem Addition...3 Die negativen ganzen Zahlen im Binärsystem...4
MehrSoftware- Qualitätsmanagement
Software- Qualitätsmanagement Thomas Kugel Brandenburg, den 10.12.2002 Agenda Einleitung Was heißt Softwarequalitätssicherung und Test Die Rolle von Test und QS in Softwareprojekten Wie wird getestet Statische
MehrTheoretische Informatik SS 04 Übung 1
Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die
MehrGrundlegende Datentypen
Foliensatz 4 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 50 Grundlegende Datentypen TU Ilmenau Seite 2 / 50 Atomare Datentypen
MehrKapitel 0: Organisatorisches
Einführung in die Praktische Informatik Wintersemester 2009 / 2010 Kapitel 0: Organisatorisches Prof. Dr. Manfred Reichert Andreas Lanz, Rüdiger Pryss Universität Ulm Institut für Datenbanken und Informationssysteme
MehrProgrammieren in C++ Arrays, Strings und Zeigerarithmetik
Programmieren in C++ Arrays, Strings und Zeigerarithmetik Inhalt Eindimensionale C-Arrays C-Strings und Strings (Mehrdimensionale C-Arrays) Arrays und Vektoren (C++) Unique Pointers (C++11) Zeigerarithmetik
MehrSortieren. Eine Testmenge erstellen
Sortieren Eine der wohl häufigsten Aufgaben für Computer ist das Sortieren, mit dem wir uns in diesem Abschnitt eingeher beschäftigen wollen. Unser Ziel ist die Entwicklung eines möglichst effizienten
Mehr3. Ziel der Vorlesung
3. Ziel der Vorlesung Der Zweck der Vorlesung ist das Studium fundamentaler Konzepte in der Algorithmentheorie. Es werden relevante Maschinenmodelle, grundlegende und höhere Datenstrukturen sowie der Entwurf
Mehr1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement
Kx Binäre Zahlen Kx Binäre Zahlen Inhalt. Dezimalzahlen. Hexadezimalzahlen. Binärzahlen. -Bit Binärzahlen ohne Vorzeichen. -Bit Binärzahlen mit Vorzeichen. -Bit Binärzahlen im er Komplement. Rechnen im
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrInhaltsverzeichnis. Danksagungen... 11
Danksagungen............................................ 11 Einführung............................................... 13 Über dieses Buch.......................................... 15 Voraussetzungen...................................
MehrEine Logikschaltung zur Addition zweier Zahlen
Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung
MehrKapitel 5: Dynamisches Programmieren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrGrundlagen der Informatik 2 (GdI2) - Algorithmen und Datenstrukturen -
Grundlagen der Informatik 2 (GdI2) - Algorithmen und Datenstrukturen - 2) Algorithmenanalyse Prof. Dr. Anja Schanzenberger FH Augsburg, Fakultät für Informatik Kontakt: anja.schanzenberger@hs-augsburg.de
MehrWir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:
1 Parallele Algorithmen Grundlagen Parallele Algorithmen Grundlagen Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: Dekomposition eines Problems in unabhängige Teilaufgaben.
MehrAlgorithmen und Datenstrukturen 1
Algorithmen und Datenstrukturen 1 5. Vorlesung Martin Middendorf / Peter F. Stadler Universität Leipzig Institut für Informatik middendorf@informatik.uni-leipzig.de studla@bioinf.uni-leipzig.de Quick-Sort
MehrEinführung in die Informatik
Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester
MehrZahlensysteme. von Christian Bartl
von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Umrechnungen... 3 2.1. Dezimalsystem Binärsystem... 3 2.2. Binärsystem Dezimalsystem... 3 2.3. Binärsystem Hexadezimalsystem... 3 2.4.
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
MehrBSZ für Elektrotechnik Dresden. Zahlenformate. Dr.-Ing. Uwe Heiner Leichsenring www.leichsenring-homepage.de
BSZ für Elektrotechnik Dresden Zahlenformate Dr.-Ing. Uwe Heiner Leichsenring www.leichsenring-homepage.de Gliederung 1 Überblick 2 Grundaufbau der Zahlensysteme 2.1 Dezimalzahlen 2.2 Binärzahlen = Dualzahlen
MehrMidterm-Klausur Technische Grundlagen der Informatik
Midterm-Klausur Technische Grundlagen der Informatik Prof. Dr. Arndt Bode Wintersemester 2002/2003 7. Dezember 2002 Name: Vorname: Matrikelnummer: Hörsaal: Platz: Unterschrift: Ergebnis: Aufgabe Punkte
MehrSchulinterner Lehrplan zum Kernlehrplan für die Qualifikationsphase Informatik
Graf-Engelbert-Schule Schulinterner Lehrplan zum Kernlehrplan für die Qualifikationsphase Informatik Zeitliche Einteilung und Themenabfolge Aus der unteren Tabelle geht die zeitliche Abfolge der zu behandelnden
MehrB.SC. INFORMATIK TIM JUNGNICKEL
ABOUT ME (21) 5. SEMESTER B.SC. INFORMATIK TU-BERLIN SEIT 2008 2 AGENDA Was ist Informatik? Wie geht es weiter? Was kann ich an der Uni machen? 1 2 3 4 Struktur des Studiums Was lernt man an der Universität?
MehrÜbungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c
Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c 1 Transportbefehle 1.1 Verwendung nur Akku und Register (R0, R1,... R7) 1.1.1 Kopieren Sie den Wert aus Register1 nach
MehrInformation in einem Computer ist ein
4 Arithmetik Die in den vorhergehenden Kapiteln vorgestellten Schaltungen haben ausschließlich einfache, Boole sche Signale verarbeitet. In diesem Kapitel wird nun erklärt, wie Prozessoren mit Zahlen umgehen.
MehrGrundlagen der Technischen Informatik Wintersemester 12/13 J. Kaiser, IVS-EOS
Gleit komma zahlen Gleitkommazahlen in vielen technischen und wissenschaftlichen Anwendungen wird eine große Dynamik benötigt: sowohl sehr kleine als auch sehr große Zahlen sollen einheitlich dargestellt
Mehr2.7 Klassen 2.8 Methoden 2.9 Rekursion 2.10 Dateien 2.11 Objektorientierung 2.12 Dynamische Datenstrukturen 2.13 Vererbung
Inhalt 1. Einführung und Motivation 2. Grundlagen der Programmierung 2.1 Einfache Programme 2.2 Syntax, Semantik und Simulation 2.3 Verzweigungen 2.4 Schleifen 2.5 Primitive Datentypen 2.6 Felder (Arrays)
MehrGrundlagen der Technischen Informatik. 4. Übung
Grundlagen der Technischen Informatik 4. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 4. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Polyadische Zahlensysteme Gleitkomma-Arithmetik 4.
MehrDatenstrukturen. Mariano Zelke. Sommersemester 2012
Datenstrukturen Mariano Zelke Sommersemester 2012 Mathematische Grundlagen: Das Handwerkszeug Mariano Zelke Datenstrukturen 2/26 Formeln: n - i = n (n+1) 2 und - i=1 k i=0 a i = ak+1 1 a 1, falls a 1 Rechnen
MehrBeispiel zu Datenstrukturen
zu Datenstrukturen Passend zum Kurs 01661 Version Juni 2008 Dieter Hoffmann Dipl.-Inform. Diese Kurshilfe zum Kurs Datenstrukuren I (Kursnummer 01661) bei Prof. Dr. Güting (Lehrgebiet Praktische Informatik
MehrEinführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann
Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann
MehrTutorium Algorithmen & Datenstrukturen
June 16, 2010 Binärer Baum Binärer Baum enthält keine Knoten (NIL) besteht aus drei disjunkten Knotenmengen: einem Wurzelknoten, einem binären Baum als linken Unterbaum und einem binären Baum als rechten
MehrVertiefungsstoff zum Thema Darstellung von Zahlen
Vertiefungsstoff zum Thema Darstellung von Zahlen Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung nach dem IEEE-754-Standard 1 Rechnen mit BCD-codierten
Mehr- k Maximalwerte aus Menge mit n >> k Elementen (Rangfolgebestimmung von Suchmaschinen!) Die typische Operationen:
6 Partiell geordnete binäre Bäume: Heap (Haufen) Motivation für manchen Anwendungen nur partielle Ordnung der Elemente statt vollständiger nötig, z.b. - Prioritätsschlange: nur das minimale (oder maximale)
MehrDie Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014
Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung Klaus Kusche, September 2014 Inhalt Ziel & Voraussetzungen Was sind abstrakte Datentypen? Was kann man damit grundsätzlich?
MehrÜber den Autor 7. Teil I Erste Schritte mit der Java-Programmierung 29
Inhaltsverzeichnis Über den Autor 7 Einführung 21 Über dieses Buch 21 Wie Sie dieses Buch verwenden 21 Konventionen in diesem Buch 22 Was Sie nicht lesen müssen 23 Törichte Annahmen 23 Aufbau des Buches
MehrNumerisches Programmieren, Übungen
Technische Universität München SoSe 0 Institut für Informatik Prof Dr Thomas Huckle Dipl-Math Jürgen Bräckle Nikola Tchipev, MSc Numerisches Programmieren, Übungen Musterlösung Übungsblatt: Zahlendarstellung,
MehrInformationssysteme Gleitkommazahlen nach dem IEEE-Standard 754. Berechnung von Gleitkommazahlen aus Dezimalzahlen. HSLU T&A Informatik HS10
Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754 Berechnung von Gleitkommazahlen aus Dezimalzahlen Die wissenschaftliche Darstellung einer Zahl ist wie folgt definiert: n = f * 10 e. f ist
MehrBITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?
BITte ein BIT Vom Bit zum Binärsystem A Bit Of Magic 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? 3. Gegeben ist der Bitstrom: 10010110 Was repräsentiert
MehrGrundlagen der Informatik Generische Klassen
Grundlagen der Informatik Generische Klassen Generische Klassen, das Java-Collection-Framework und mehr Generische Programmierung Beobachtung: In vielen Problemstellungen hängt der grundsätzliche Aufbau
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Ausgabe: 2005-02-21 Abgabe: 2005-02-21 Technische Informatik - Eine
MehrGraphen: Datenstrukturen und Algorithmen
Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.
MehrTechnische Informatik 2 Adressierungsarten
Technische Informatik 2 Adressierungsarten Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute X-Adressmaschine 0-Adressmaschine 1-Adressmaschine 2-Adressmaschine
MehrCurriculum Programmieren C/C++ linux.isoe.ch/lecture
Curriculum Programmieren C/C++ linux.isoe.ch/lecture H.Buchmann 5. November 2003 prog-2.tex,v 1.1 2002/12/01 12:20:28 buchmann Exp buchmann Inhaltsverzeichnis 1 Einführung 3 2 Generelle Prinzipien 3 3
MehrVortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik)
Vortrag Suchverfahren der Künstlichen Intelligenz Sven Schmidt (Technische Informatik) Suchverfahren der Künstlichen Intelligenz Grundlagen Zustandsraumrepräsentation Generische Suche Bewertung von Suchstrategien
MehrOrganisatorisches. Informatik II Informationen und Daten. Organisatorisches. Organisatorisches. Rainer Schrader. 13. Oktober 2008
Dozent: Prof. Dr. Rainer Schrader Informatik II Informationen und Daten Rainer Schrader Zentrum für Angewandte Informatik Köln 13. Oktober 2008 Tel.: 470-6030 email: schrader@zpr.uni-koeln.de Sprechstunde:
MehrDiese vier Teile werden durch Bindestriche (oder seltener Leerzeichen) abgetrennt.
Musteraufgaben für die Abschlussprüfung im Ausbildungsberuf Mathematisch-technische Softwareentwickler Vorbemerkung: Der Aufgabensatz besteht drei Aufgaben, deren Punkteverteilung jeweils vom Aufgabenersteller
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
MehrM. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung
M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales
MehrHello world. Sebastian Dyroff. 21. September 2009
Hello world Sebastian Dyroff 21. September 2009 1 / 35 Inhaltsverzeichnis Organisatorisches Hello World Typen und Operatoren Programmfluss Weitere Konstrukte Nützliche Tipps 2 / 35 Inhalte dieser Veranstaltung
Mehr