Streaming Algorithmen Dynamische Zuordnung von Objekten mit größter Häufigkeit
|
|
- Oldwig Solberg
- vor 5 Jahren
- Abrufe
Transkript
1 Streaming Algorithmen Streaming Algorithmen Dynamische Zuordnung von Objekten mit größter Häufigkeit Seminar über Algorithmen, SS 2012 Simon Tippenhauer Freitag, 06. Juni
2 Gliederung Gliederung 1. Motivation 2. Data Streams und Data Stream Algorithm 3. Formalisierung der Aufgabe: Dynamische Zuordnung von Objekten mit größter Häufigkeit. 4. Der Algorithmus (i) Methoden und Idee (ii) Bestimmung der absoluten Mehrheit (iii) Bestimmung von k Hot Items 5. Evaluation 2
3 1. Motivation 1. Motivation Internet Service Provider (ISP) führt Statistik über den Datenverkehr. Welche Netzwerkadressen verursachen den meisten Datenverkehr oder unterliegen den häufigsten Anfragen? Der ISP kann daraufhin den Datenfluss steuern und einer Überlastung der Server entgegenwirken. Anhand der Statistik können auch Anomalien festgestellt werden. 3
4 2. Data Streams und Data Stream Algorithms 2. Data Streams und Data Stream Algorithms Ein einführendes Beispiel: Finde die fehlende Zahl! Sei π eine Permutation der Zahlen 1, 2,..., n und π -1 die selbe Permutation mit einer fehlenden Zahl (n ist dabei sehr groß!). Nun werden die Zahlen von π -1 nacheinander gezeigt und mit O(log n) Speicherplatz, soll die fehlende Zahl bestimmt werden. Die fehlende Zahl ist dann: Beispiel: n = 8, π -1 = 4,2,7,6,1,5,8 s = 8(8 +1) s = n(n +1) π 1 [i] = = 3 i=1 2 n 1 i=1 π 1 [i] 4
5 2. Data Streams und Data Stream Algorithms Data Streams Definition 1: Ein Data Stream stellt Eingabedaten a i dar, die in einer sehr hohen Rate eintreffen. Eine hohe Rate liegt vor, wenn die Kommunikations- und Berechnungsinfrastruktur stark beansprucht werden. Es ist also schwierig die gesamte Eingabe dem Programm zu übermitteln - transmit (T) anspruchsvolle Funktionen zu berechnen - compute (C) die Eingabe temporär oder auf Dauer zu speichern - space (S) Die Aufgabe ist es ständige Updates zu bearbeiten und zeitnahe Statistiken zu liefern. 5
6 2. Data Streams und Data Stream Algorithms Data Stream Models Eine Eingabefolge a 1, a2,... beschreibt ein zugrunde liegendes Signal A. Das Signal A ist eine Funktion A:[1...N] R. Die Modelle unterscheiden sich dadurch, wie die a i s das Signal A beschreiben. Time Series Model Turnstile Model Cash Register Model 6
7 2. Data Streams und Data Stream Algorithms Time Series Model Jedes a i entspricht A[i] und sie treten in aufsteigender Reihenfolge auf. 100 Time Series Model Signal A 7
8 2. Data Streams und Data Stream Algorithms Cash Register Model Jedes a i = (j, Ii) entspricht einer Erhöhung von A[j] um den Wert Ii > 0. Also, Ai = Ai-1[j] + Ii A i ist der Zustand des Signals A, nachdem die i-te Eingabe erfolgt ist. Mehrere a i s können ein gegebenes A[j] mit der Zeit erhöhen. Dies ist das wohl am häufigsten auftretende Model. 8
9 2. Data Streams und Data Stream Algorithms Turnstile Model Jedes a i = (j, Ui) entspricht einer Erhöhung von A[j] um den Wert Ui. Also, Ai = Ai-1[j] + Ui A i ist der Zustand des Signals A, nachdem die i-te Eingabe erfolgt ist. Die Werte U i können positiv oder negativ sein. Dies ist das wohl allgemeinste Model. Das Turnstile Model ist strikt, wenn immer alle A[j] s 0 sind. 9
10 2. Data Streams und Data Stream Algorithms Data Stream Algorithms Auf dem Signal A sollen unterschiedliche Funktionen berechnet werden. Die Performance hängt von drei wesentlichen Messverfahren ab: 1. Verarbeitungszeit pro Eingabe ai. (Proc. Time) 2. Speicherbedarf der Datenstruktur für A zum Zeitpunkt t. (Storage) 3. Laufzeit zur Berechnung von Funktionen auf A. (Compute Time) Daraus ergeben sich folgende Anforderung an die Algorithmen: Zu jedem Zeitpunkt t soll Proc. Time, Storage und Compute Time gleichzeitig o(n, t) sein, vorzugsweise polylog(n, t). Dabei entspricht N die Größe der Domäne. Abgeschwächt kann Compute Time auch nicht sublinear sein. 10
11 3. Formalisierung der Aufgabe Gliederung 1. Motivation 2. Data Streams und Data Stream Algorithm 3. Formalisierung der Aufgabe: Dynamische Zuordnung von Objekten mit größter Häufigkeit. 4. Der Algorithmus (i) Methoden und Idee (ii) Bestimmung der absoluten Mehrheit (iii) Bestimmung von k Hot Items 5. Evaluation 11
12 3. Formalisierung der Aufgabe 3. Formalisierung der Aufgabe: Dynamische Zuordnung von Objekten mit größter Häufigkeit Datenbanksystem mit Lösch- und Einfügeoperationen. Aufgabe: Bestimmung der k häufigsten Objekte. I. Folge von Transaktionen auf Objekten, II. o.b.d.a. sind die Objekte mit Zahlen von 1 bin m identifizierbar. III.Das Nettovorkommen von Objekt i zum Zeitpunkt t wird bezeichnet mit: IV. Aktuelle relative Häufigkeit von Objekt i: f i (t) = n i (t) / V. Die k häufigsten Objekte haben die k größten f i (t). m j=1 n j (t) n i (t) VI. Es liegt ein strict Turnstile Model vor. 12
13 3. Formalisierung der Aufgabe Anforderungen an den Algorithmus I. Berechnung der k häufigsten Objekte zu jedem Zeitpunkt. II. Sublinear zu jedem Zeitpunkt t bezüglich (i) der Verarbeitungszeit pro Transaktion ai, (ii) dem Speicherbedarf der Datenstruktur und (iii) der Laufzeit für die Berechnung der k häufigsten Objekte. Die Anforderungen für Streaming Algorithmen können für I. nicht eingehalten werden. Daher werden statt der k häufigsten Objekt, die Hot Items gefordert. 13
14 3. Formalisierung der Aufgabe Hot Item Definition: Ein Objekt i ist ein Hot Item zum Zeitpunkt t, wenn gilt: f i (t) > 1 k +1 Es kann maximal k Hot Items geben, aber auch weniger oder keins. Beispiel: k = 3, m = 4 m c = n j (t) = 20 j=1 1 k +1 = 1 4 = 5 20 f 1 (t) = 2 20 f 2 (t) = 7 20 f 3 (t) = 5 20 f 4 (t) = 6 20 f 2 (t) > 1 k +1 f 4 (t) > 1 k +1 Somit sind die Hot Items 2 und 4. 14
15 3. Formalisierung der Aufgabe Lemma 1: Jeder Algorithmus, der garantiert alle und nur Objekte zu finden, die eine größeren Häufigkeit als 1/(k + 1) haben, benötigt Ω(m) viele Bits. Mit o(m) Speicherplatz folgt, dass 1. nicht alle Hot Items bestimmt werden können oder 2. Objekte mit niedrigerer relativen Häufigkeit als Hot Item klassifiziert werden. Wenn die Small Tail Eigenschaft vorausgesetzt wird, gilt das Lemma 1 nicht! Definition: Sei F eine Menge von relativen Häufigkeiten ƒi mit ƒ1 ƒ2... fk fk+1... ƒm. Dann hat F einen Small Tail, wenn gilt: m f i 1 i>k k +1 15
16 3. Formalisierung der Aufgabe Gliederung 1. Motivation 2. Data Streams und Data Stream Algorithm 3. Formalisierung der Aufgabe: Dynamische Zuordnung von Objekten mit größter Häufigkeit. 4. Der Algorithmus (i) Methoden und Idee (ii) Bestimmung der absoluten Mehrheit (iii) Bestimmung von k Hot Items 5. Evaluation 16
17 4. Der Algorithmus Methoden Summary Datenstruktur mittels Random Sampling Summary Datenstruktur repräsentiert die zugrundeliegende Relation mit deutlich weniger Speicherplatzbedarf und bietet ausreichend viele Informationen, um Anfragen zufriedenstellend zu beantworten. Random Sampling beschreibt ein Auswahlverfahren für Stichproben, indem die Stichproben zufällig ausgewählt werden. Benötigt viele Samples und Resampling ist von Zeit zu Zeit notwendig. 17
18 Methoden (non-adaptive) Group Testing Group Testing dient zur effektiven Bestimmung von ausgezeichneten Elementen einer Menge. non-adaptive bedeutet, dass alle Test unabhängig von den Ergebnissen, der anderen Test durchgeführt werden. 18
19 Idee zum Algorithmus Es werden Gruppen für eine Teilmenge von Objekten gebildet. Die Zähler bilden die Summary Datenstruktur. Aus den Ergebnissen lassen sich die Hot Items ermitteln. Jede Gruppe hat einen Zähler für das Nettovorkommen innerhalb dieser. Zusätzlich wird ein Zähler für das gesamte Nettovorkommen geführt. Der Gruppentest informiert über die Beinhaltung eines Hot Items in der Gruppe. 19
20 Herausforderungen für diesen Ansatz 1. Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). 2. Geeignete (platzsparende) Repräsentation der Teilmengen. 3. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Starten wir mit dem einfachen Fall! 20
21 k = 1 Deterministische Bestimmung der absoluten Mehrheit Gegeben ein Stream a 1,..., at zum Zeitpunkt t mit ai {1,..., m}. Objekt i ist ein Hot Item, wenn gilt: Auswahl der Teilmengen (Gruppen) G j ist die Teilmenge von Objekten, dessen j-te Ziffer in Binärdarstellung eine 1 ist. Die zugehörigen Zähler werden mit c 0,..., clog m bezeichnet. Die Datenstruktur umfasst die Zähler c 0,..., clog m der Gruppen und f i > 1 1+ k > 1 2 einen Zähler c für das Nettovorkommen aller Objekt. 21
22 Verarbeitung des Streams und Bestimmung des Hot Items Einfügen von Objekt i: Inkrementiere den Zähler c. Erhöhe jeden Zähler c j um 1, wenn das j-te Bit von i gesetzt ist. Löschen von Objekt i: Dekrementiere den Zähler c. Verringere jeden Zähler c j um 1, wenn das j-te Bit von i gesetzt ist. Bestimmung des Hot Items: Wenn es existiert, so ist hot = log m 2 j greater(c j, c 2 ) j=0 22
23 Beispiel (nur Inserts): k = 1, m = 8, t = 17, Signal A = 3,1,2,3,8,5,3,3,8,7,7,7,3,3,3,3,3 15 Nettovorkommen Signal Hot Item Bit 0 Bit 1 Bit 2 Bit 3 23
24 Satz 1: Wenn ein Objekt mit der absoluten Mehrheit vorhanden ist, so findet der Algorithmus dieses in O(log m) Zeit pro Operation. 1. Der Zustand der Datenstruktur ist der selbe nach k Inserts und l Deletes, wie wenn nur n = k - l Inserts vorliegen. 2. Der Algorithmus arbeitet nur mit Inserts korrekt. Beweis zu 2.: Sei i das Hot Item mit relativer Häufigkeit ƒi > 0.5 zum Zeitpunkt t. ni(t) > 0.5 c Für die Zähler von i gilt: cj > 0.5 c n j i f j = 1 f i < 0.5 Für die anderen Zähler gilt: cj < 0.5 Die Ziffern der Binärdarstellung kann somit abgelesen werden. Laufzeit abhängig von der Anzahl der Zähler, d.h. O(log m) 24
25 Erfüllte Herausforderungen Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). Geeignete (platzsparende) Repräsentation der Teilmengen. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Weiter geht es mit dem allgemeinen Fall! 25
26 k > 1 Randomisierte Bestimmung der Hot Items Idee für k = 1 kann mit folgenden Beobachtungen verwendet werden. In einer Teilmenge mit nur einem Hot Item, besitzt dieses die Mehrheit. Mit der Small Tail Eigenschaft sogar die absolute Mehrheit. Durch geschickte Wahl der Teilmengen kann sichergestellt werden, dass jedes Hot Item in solch einer Gruppe vorkommt. Für jede Teilmenge werden O(log m) Zähler geführt. Definition: Sei F {1,..., m} die Menge der Hot Items mit F k. Dann ist S {1,..., m} eine gute Teilmenge, wenn S F = 1 ist. 26
27 Wiederholung: Herausforderungen für diesen Ansatz mit k > 1 Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). Geeignete (platzsparende) Repräsentation der Teilmengen. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Starten mit den Begrenzung der notwendigen Teilmengen. 27
28 Satz 2: Durch wählen von O(k ln k) Teilmengen, indem zufällig (m/k) Objekte von 1 bis m gleichverteilt gewählt werden, sind mit konstanter Wahrscheinlichkeit k Teilmengen S1,..., Sk enthalten, sodass gilt: Pr[i ist ein Hot Item] = m k k i (F S i ) = F m k Pr[Ein Hot Item bei Objekten] = p = m (1 k m m ) k 1 m Für Relevante Fälle mit 1 k gilt: 0 p Aus dem Coupon Collector Problem folgt die Wahl von O(k ln k) Teilmengen 28
29 Herausforderungen für diesen Ansatz mit k > 1 Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). Geeignete (platzsparende) Repräsentation der Teilmengen. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Weiter mit der geeigneten Repräsentation der Teilmengen. 29
30 Primzahl P 2k, a und b gleichverteilte Zufallszahlen aus {0, 1,..., P-1} Definieren Universelles Hashing zur Repräsentation von Teilmengen h a,b(x) = ((ax + b mod P) mod 2k) und S a,b,i = {x ha,b(x) = i} zugehörige Teilmenge. 1 Mit Wahrscheinlichkeit sind zwei Objekte in der selben Teilmenge. 2k 30
31 Brauchen O(k ln k) Teilmengen, damit jedes Hot Item in einer guten Teilmenge ist. Dazu werden T = O(log k Paare von (a,b) gewählt. δ ) Teilmengen. 2Tk = 2k log k δ Jedes Objekt gehört T Teilmengen an. Universelles Hashing Genaue Anzahl der Teilmengen Anhand der Bitrepräsentation des Objekts werden die entsprechende Zähler der Teilmengen erhöht bzw. verringert. Lemma 2 (ohne Beweis): Für jedes Hot Item ist die Wahrscheinlichkeit in mindestens einer guten Menge zu sein mindestens 1 - δ. 31
32 Die Teilmengen im Bild S a1,b 1,0 S a1,b 1,1 S a1,b 1,2k 1 S a2,b 2,2k S at,b T,2Tk Gruppenzähler c c 0 c 00 c 01 c 0 log m c 1 c 10 c 11 c 1log m c 2k 1 c 2k 10 c 2k 11 c 2k 1log m c 2k c 2k 0 c 2k1 c 2k log m c 2Tk 1 c 2Tk 10 c 2Tk 11 c 2Tk 1log m 0-te Bit 1-te Bit (log m)-te Bit 32
33 Herausforderungen für diesen Ansatz mit k > 1 Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). Geeignete (platzsparende) Repräsentation der Teilmengen. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Es müssen nur noch die Hot Items bestimmt werden. 33
34 Effiziente Bestimmung der Hot Items 1. Für jede Teilmenge Sa,b,i teste, 1.1. ob der zugehörige Gruppenzähler und 1.2. es eine gute Teilmenge ist. 2. Wenn ja, 2.1. Nutze den Algorithmus von k = 1 und bestimme das Hot Item der Gruppe. 3. Wenn nein, 3.1. Teste die nächste Teilmenge. 4. Gebe alle Hot Items aus. c i > c k +1 34
35 Lemma 3: Sei Sa,b,i eine Teilmenge mit den assoziierten Zählern ca,b,i, c0, c1,..., clog m. Mit der Small Tail Eigenschaft vorausgesetzt, lässt sich deterministisch bestimmen, ob Sa,b,i eine gute Teilmenge ist. 1. Fall: Kein Hot Item in der Menge, dann gilt: c a,b,i < c k Fall: Zwei oder mehr Hot Items in der Menge, dann ex. ein j, sodass gilt: c a,b,i c j > c k +1 35
36 Satz 3a: Mit einer Wahrscheinlichkeit von mindestens 1 - δ können alle Hot Items mit O(k(log k + log 1/δ)) Speicherplatz zu jedem Zeitpunkt t bestimmt werden. Speicherplatz für die Hashfunktionen Primzahl P in Abhängigkeit von m, also O(log m), sowie O(log k δ ) Werte von Paaren (a,b) für alle Teilmengen. Also O(log m) + O(log k δ ). Speicherplatz für die Zähler Für jede Gruppe Zähler. Bei Teilmenge also O(log m k log k. δ ) 2Tk = 2k log k δ O(log m) O(log m k log k δ ) Speicherplatz für die Datenstruktur. 36
37 Satz 3a: Mit einer Wahrscheinlichkeit von mindestens 1 - δ können alle Hot Items mit O(k(log k + log 1/δ)) Speicherplatz zu jedem Zeitpunkt t bestimmt werden. Lemma 2 Wahrscheinlichkeit 1 - δ ist jedes Hot Item in einer guten Menge. Lemma 3 und Satz 1 Kann deterministische bestimmt werden, ob ein Hot Item in der Teilmenge ist. Wenn ein Hot Item vorhanden ist, so kann es bestimmt werden. 37
38 Satz 3b: Dabei wird O(log k/δ log m) Zeit für eine Aktualisierung und O(k log k/δ log m) Zeit für die Auflistung aller Hot Items benötigt. Bei einer Aktualisierung werden T = O(log k δ ) jeweils Hashfunktionen in berechnet und Zähler verändert. Zeit pro Aktualisierung. Für die Auflistung der Hot Items gilt: Hot Item kann in einer Gruppe in dies für Gruppen. O(log m) O(log k log m) δ O(k log k δ ) O(k log k log m) δ O(log m) Zeit für alle Hot Items. Zeit bestimmt werden und 38
39 Herausforderungen für diesen Ansatz mit k > 1 Begrenzung der Anzahl notwendiger Teilmengen (Gruppen). Geeignete (platzsparende) Repräsentation der Teilmengen. Effiziente Bestimmung der Hot Items anhand von Gruppentests. Fertig! 39
40 5. Evaluation Gliederung 1. Motivation 2. Data Streams und Data Stream Algorithm 3. Formalisierung der Aufgabe: Dynamische Zuordnung von Objekten mit größter Häufigkeit. 4. Der Algorithmus (i) Methoden und Idee (ii) Bestimmung der absoluten Mehrheit (iii) Bestimmung von k Hot Items 5. Evaluation 40
41 5. Evaluation Vergleich mit vorherigen Ansätzen Recall on Synthetic Data Precision on Synthetic Data Recall Zipf parameter Group Testing Lossy Counting Frequent Precision Zipf parameter Group Testing Lossy Counting Frequent recall = truepositive truepositive + falsenegative precision = truepositive truepositive + falsepositive 41
42 5. Evaluation Vergleich mit vorherigen Ansätzen Recall on Real Data Precision on Precision Real Data on Real Data Recall Precision Precision Number of Transactions / 10^6 Number of Transactions Number of / 10^6 Transactions / 10^6 Group Testing Lossy Counting Frequent Group Testing Group Lossy Testing Counting Lossy Frequent Counting Frequent recall = truepositive Figure 6: Performance results on real data truepositive + falsenegative very poor: for every hot item that is reported, around n infrequent items are also included in the output, and we nnot distinguish between these two types. There is a price to pay for the extra power of the Group esting algorithm: it takes longer to process each item under not. ur implementation, and requires more memory. However, ese memory requirements are all very small compared to precision = truepositive truepositive + falsepositive recall of the Frequent algorithm looks reasonably good especially as time progresses, but its precision, which begins poorly, appears to degrade further. One possible explanation is that the algorithm is collecting all items which are are ever hot, and outputting these whether they are hot or Certainly, it outputs between two to three times as many items as are currently hot, meaning that its output 42
43 Literatur Literatur S. Muthukrishnan. Data Streams: Algorithms and Applications. Foundations and Trends in Theoretical Computer Science. Volume 1, Issue 2, G. Cormode and S. Muthukrishnan. What s Hot and What s Not: Tracking most frequent items dynamically. ACM PODS, Vielen Dank für eure Aufmerksamkeit! 43
Approximate Frequency Counts over Data Streams
Approximate Frequency Counts over Data Streams Gurmeet Singh Manku Rajeev Motwani Näherungsweise Häufigkeitszählung in Datenströmen Seminarvortrag von Marco Möller 1 Wofür ist das gut? Was sind die Top
MehrMoment: Maintaining Closed Frequent Itemsets over a Stream Sliding Window
Institut für Informatik Moment: Maintaining Closed Frequent Itemsets over a Stream Sliding Window Yun Chi, Haixun Wang, Philip S. Yu, Richard R. Muntz Hauptseminar Data Science - SS 2016 Team D: Julian
MehrAlgorithmen für schwierige Probleme
Algorithmen für schwierige Probleme Britta Dorn Wintersemester 2011/12 24. November 2011 Farbkodierung Beispiel Longest Path Longest Path gegeben: G = (V, E) und k N. Frage: Gibt es einen einfachen Pfad
MehrAlgorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen WS 08/09 Friedhelm Meyer auf der Heide Vorlesung 13, 25.11.08 Friedhelm Meyer auf der Heide 1 Organisatorisches Die letzte Vorlesung über Grundlegende
MehrRandomisierte Datenstrukturen
Seminar über Algorithmen DozentInnen: Helmut Alt, Claudia Klost Randomisierte Datenstrukturen Ralph Schäfermeier 13. 2. 2007 Das Verwalten von Mengen, so dass ein schneller Zugriff auf deren Elemente gewährleistet
Mehr4 Probabilistische Analyse und randomisierte Algorithmen
Algorithmen und Datenstrukturen 96 4 Probabilistische Analyse und randomisierte Algorithmen Bei der Algorithmenanalyse ist es sehr hilfreich, Aspekte berücksichtigen zu können, die vom Zufall abhängen.
Mehr12. Hashing. Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete.
Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete. Worst-case Zeit für Search: Θ(n). In der Praxis jedoch sehr gut. Unter gewissen
MehrBerechnung approximierter Voronoi-Zellen auf geometrischen Datenströmen
Definition Berechnung approximierter Voronoi-Zellen auf geometrischen Datenströmen Seminar über Algorithmen WS 2005/2006 Vorgetragen von Oliver Rieger und Patrick-Thomas Chmielewski basierend auf der Arbeit
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Weitere Grundlagen Maike Buchin 20.4.2017 Wiederholung wir interessieren uns für effizienten Algorithmen und Datenstrukturen Laufzeiten messen wir asymptotisch in der Oh-Notation
MehrSeminar über Algorithmen Übersicht über streaming (Datenstrom-)Algorithmen
Seminar über Algorithmen Übersicht über streaming (Datenstrom-)Algorithmen von Roman Guilbourd Inhalt Was sind Datenströme Eigenschaften der Datenstromalgorithmen Anwendungen Einführungsbeispiel Mathematische
Mehr13. Hashing. AVL-Bäume: Frage: Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n)
AVL-Bäume: Ausgabe aller Elemente in O(n) Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n) Frage: Kann man Einfügen, Löschen und Suchen in O(1) Zeit? 1 Hashing einfache Methode
Mehr4.4.1 Statisches perfektes Hashing. des Bildbereichs {0, 1,..., n 1} der Hashfunktionen und S U, S = m n, eine Menge von Schlüsseln.
4.4 Perfektes Hashing Das Ziel des perfekten Hashings ist es, für eine Schlüsselmenge eine Hashfunktion zu finden, so dass keine Kollisionen auftreten. Die Größe der Hashtabelle soll dabei natürlich möglichst
MehrKorollar 191 In einem (a, b)-baum mit n gespeicherten Schlüsseln können die Wörterbuchoperationen in Zeit O(log a n) durchgeführt werden.
Korollar 191 In einem (a, b)-baum mit n gespeicherten Schlüsseln können die Wörterbuchoperationen in Zeit O(log a n) durchgeführt werden. Bemerkung: Die Wahl von a und b hängt wesentlich von der Anwendung
MehrRandomisierte Algorithmen und probabilistische Analyse
Randomisierte Algorithmen und probabilistische Analyse S.Seidl, M.Nening, T.Niederleuthner S.Seidl, M.Nening, T.Niederleuthner 1 / 29 Inhalt 1 Randomisierte Algorithmen 2 Probabilistische Analyse S.Seidl,
MehrAlgorithmen 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
MehrEADS 3.3 Gewichtsbalancierte Bäume 95/598 ľernst W. Mayr
3.3 Gewichtsbalancierte Bäume Siehe zu diesem Thema Seite 189ff in Kurt Mehlhorn: Data structures and algorithms 1: Sorting and searching, EATCS Monographs on Theoretical Computer Science, Springer Verlag:
MehrStreaming Data: Das Modell
Streaming Data: Das Modell Berechnungen, bei fortlaufend einströmenden Daten (x t t 0), sind in Echtzeit zu erbringen. Beispiele sind: - Verkehrsmessungen im Internet, - Datenanalyse in der Abwehr einer
MehrWahrscheinlichkeitsrechnung und Statistik
Babeş-Bolyai Universität Fakultät für Mathematik und Informatik Oktober 2018 Im Alltag... Laut den meteorologischen Vorhersagen wird es morgen regnen. Ob ich riskiere und die Wette verlieren werde? Ich
MehrInformatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 8 (13.5.2016) Hashtabellen I Algorithmen und Komplexität Dictionary mit sortiertem Array Laufzeiten: create: O(1) insert: O(n) find: O(log
MehrEinwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008
Problemseminar Komplexitätstheorie und Kryptographie Martin Huschenbett Student am Institut für Informatik an der Universität Leipzig 30. Oktober 2008 1 / 33 Gliederung 1 Randomisierte Algorithmen und
MehrPseudo-Zufallsgeneratoren basierend auf dem DLP
Seminar Codes und Kryptografie SS 2004 Struktur des Vortrags Struktur des Vortrags Ziel Motivation 1 Einleitung Ziel Motivation 2 Grundlegende Definitionen Zufallsgeneratoren 3 Generator Sicherheit 4 Generator
MehrPRIMES is in P. Ein Vortrag von Holger Szillat.
PRIMES is in P Ein Vortrag von Holger Szillat szillat@informatik.uni-tuebingen.de Übersicht Geschichte Notationen und Definitionen Der Agrawal-Kayal-Saxena-Algorithmus Korrektheit und Aufwand Fazit Geschichte
MehrAlgorithmen und Datenstrukturen (Informatik II) SS Klausur
Lehrstuhl für Algorith. und Datenstrukturen Prof. Dr. Hannah Bast Axel Lehmann Algorithmen und Datenstrukturen (Informatik II) SS 2013 http://ad-wiki.informatik.uni-freiburg.de/teaching Klausur Mittwoch
MehrDatenströme. Prof. Dr. Nicole Schweikardt. Arbeitsgruppe Logik in der Informatik Humboldt-Universität zu Berlin
Datenströme Prof. Dr. Nicole Schweikardt Arbeitsgruppe Logik in der Informatik Humboldt-Universität zu Berlin Vorlesung Big Data Analytics in Theorie und Praxis Datenströme Situation: riesige Mengen von
MehrInformatik II: Algorithmen und Datenstrukturen SS 2015
Informatik II: Algorithmen und Datenstrukturen SS 2015 Vorlesung 8b, Mittwoch, 17. Juni 2015 (Balancierte Suchbäume) Prof. Dr. Hannah Bast Lehrstuhl für Algorithmen und Datenstrukturen Institut für Informatik
MehrAbschnitt 7: Komplexität von imperativen Programmen
Abschnitt 7: Komplexität von imperativen Programmen 7. Komplexität von imperativen Programmen 7 Komplexität von imperativen Programmen Einf. Progr. (WS 08/09) 399 Ressourcenbedarf von Algorithmen Algorithmen
MehrAlgorithmentheorie Randomisierung
Algorithmentheorie 03 - Randomisierung Prof. Dr. S. Albers Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten
MehrVI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren
VI.4 Elgamal - vorgestellt 1985 von Taher Elgamal - nach RSA das wichtigste Public-Key Verfahren - besitzt viele unterschiedliche Varianten, abhängig von zugrunde liegender zyklischer Gruppe - Elgamal
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (13 Offenes Hashing) Prof. Dr. Susanne Albers Hashing: Allgemeiner Rahmen Schlüsselmenge S Universum U aller möglichen Schlüssel Hashfunktion h 0,,m-1
MehrSplay-Bäume. Joseph Schröer. Seminar über Algorithmen SoSe 2011, Prof. Dr. Helmut Alt
Splay-Bäume Joseph Schröer Seminar über Algorithmen SoSe 2011 Prof. Dr. Helmut Alt Einordnung Splay-Baum (engl. Splay Tree) Selbstanpassender binärer Suchbaum Engl. (to) splay spreizen wegstrecken weiten
MehrWillkommen zur Vorlesung Komplexitätstheorie
Willkommen zur Vorlesung Komplexitätstheorie WS 2011/2012 Friedhelm Meyer auf der Heide V11, 16.1.2012 1 Themen 1. Turingmaschinen Formalisierung der Begriffe berechenbar, entscheidbar, rekursiv aufzählbar
MehrFormaler. Gegeben: Elementfolge s = e 1,...,e n. s ist Permutation von s e 1 e n für eine lineare Ordnung ` '
Sortieren & Co 164 165 Formaler Gegeben: Elementfolge s = e 1,...,e n Gesucht: s = e 1,...,e n mit s ist Permutation von s e 1 e n für eine lineare Ordnung ` ' 166 Anwendungsbeispiele Allgemein: Vorverarbeitung
Mehr6/23/06. Universelles Hashing. Nutzen des Universellen Hashing. Problem: h fest gewählt es gibt ein S U mit vielen Kollisionen
Universelles Hashing Problem: h fest gewählt es gibt ein S U mit vielen Kollisionen wir können nicht annehmen, daß die Keys gleichverteilt im Universum liegen (z.b. Identifier im Programm) könnte also
MehrAlgorithmen I. Tutorium 1-4. Sitzung. Dennis Felsing
Algorithmen I Tutorium 1-4. Sitzung Dennis Felsing dennis.felsing@student.kit.edu www.stud.uni-karlsruhe.de/~ubcqr/algo 2011-05-09 Überblick 1 Verkettete Listen 2 Unbeschränkte Felder 3 Amortisierte Laufzeitanalyse
MehrLineare Kongruenzgeneratoren und Quicksort
Seminar Perlen der theoretischen Informatik Dozenten: Prof. Johannes Köbler und Olaf Beyersdorff Lineare Kongruenzgeneratoren und Quicksort Ausarbeitung zum Vortrag Mia Viktoria Meyer 12. November 2002
MehrParalleler Cuckoo-Filter. Seminar: Implementierungstechniken für Hauptspeicherdatenbanksysteme Jeremias Neth München, 21.
Paralleler Cuckoo-Filter Seminar: Implementierungstechniken für Hauptspeicherdatenbanksysteme Jeremias Neth München, 21. November 2017 1 Paralleler Cuckoo-Filter Cuckoo-Hashtabelle Serieller Cuckoo-Filter
MehrAlgorithmen & Datenstrukturen Midterm Test 2
Algorithmen & Datenstrukturen Midterm Test 2 Martin Avanzini Thomas Bauereiß Herbert Jordan René Thiemann
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität
MehrIntroduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016
to to May 2016 to What is Programming? All computers are stupid. All computers are deterministic. You have to tell the computer what to do. You can tell the computer in any (programming) language) you
Mehr13. Woche: NP-Vollständigkeit Satz von Cook-Levin Anwendungen in der Kryptographie
13 Woche: NP-Vollständigkeit Satz von Cook-Levin Anwendungen in der Kryptographie 13 Woche: NP-Vollständigkeit, Satz von Cook-Levin, Anwendungen 276/ 333 N P-Vollständigkeit Ḋefinition NP-vollständig Sei
MehrMinimalpolynome und Implikanten
Kapitel 3 Minimalpolynome und Implikanten Wir haben bisher gezeigt, daß jede Boolesche Funktion durch einfache Grundfunktionen dargestellt werden kann. Dabei können jedoch sehr lange Ausdrücke enstehen,
MehrDatenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März
MehrFerien-Übungsblatt 8 Lösungsvorschläge
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Ferien-Übungsblatt 8 Lösungsvorschläge Vorlesung Algorithmentechnik im WS 09/10 Problem 1: Probabilistische Komplexitätsklassen [vgl.
MehrEinführung in die Programmierung
Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität
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
MehrHybride Verschlüsselungsverfahren
Hybride Verschlüsselungsverfahren Ziel: Flexibilität von asym. Verfahren und Effizienz von sym. Verfahren. Szenario: Sei Π = (Gen, Enc, Dec) ein PK-Verschlüsselungsverfahren und Π = (Gen, Enc, Dec ) ein
MehrHashing II. Übersicht. 1 Hashing und Verkettung. 2 Offene Adressierung
Übersicht Datenstrukturen und Algorithmen Vorlesung 13: 1 Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group https://moves.rwth-aachen.de/teaching/ss-18/dsal/ 2 Effizienz
MehrZufall oder Absicht?
Zufall oder Absicht? Randomisierung und Derandomisierung Prof. Markus Bläser Universität des Saarlandes 4. Januar 2010 1 / 21 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests
MehrEin sortiertes Feld kann in O(log n) durchsucht werden, z.b. mit Binärsuche. Der Algorithmus 1 gibt den Pseudocode der binären Suche an.
2.5 Suchen Eine Menge S will nach einem Element durchsucht werden. Die Menge S ist statisch und S = n. S ist Teilmenge eines Universums auf dem eine lineare Ordnung definiert ist und soll so gespeichert
MehrTheoretische Informatik. Berechenbarkeit
Theoretische Informatik Berechenbarkeit 1 Turing Maschine Endlicher Automat mit unendlichem Speicher Ein Modell eines realen Computers Was ein Computer berechnen kann, kann auch eine TM berechnen. Was
MehrExponentiation: das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element
Problemstellung Banale smethode : das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element a n = } a a a {{ a } H n (schreiben ab jetzt a n statt a n ) Hinweis:
MehrKryptographische Protokolle
Kryptographische Protokolle Lerneinheit 2: Generierung von Primzahlen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2018/2019 15.11.2018 Einleitung Einleitung Diese Lerneinheit
MehrAlgorithmentheorie Randomisierung. Robert Elsässer
Algorithmentheorie 03 - Randomisierung Robert Elsässer Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten
MehrDefinition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen:
HeapSort Allgemeines Sortieralgorithmen gehören zu den am häufigsten angewendeten Algorithmen in der Datenverarbeitung. Man hatte daher bereits früh ein großes Interesse an der Entwicklung möglichst effizienter
MehrExponentiation: das Problem
Problemstellung Exponentiation: das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element a n = } a a a {{ a } H n (schreiben ab jetzt a n statt a n ) Hinweis:
MehrGrundlagen der Algorithmen und Datenstrukturen Kapitel 4
Grundlagen der Algorithmen und Datenstrukturen Kapitel 4 Christian Scheideler + Helmut Seidl SS 2009 06.05.09 Kapitel 4 1 Wörterbuch-Datenstruktur S: Menge von Elementen Jedes Element e identifiziert über
MehrSatz 23 In einer Hashtabelle der Größe n mit m Objekten tritt mit Wahrscheinlichkeit
Satz 23 In einer Hashtabelle der Größe n mit m Objekten tritt mit Wahrscheinlichkeit 1 e m(m 1) 2n 1 e m2 2n mindestens eine Kollision auf, wenn für jeden Schlüssel jede Hashposition gleich wahrscheinlich
MehrProgramm heute. Algorithmen und Datenstrukturen (für ET/IT) Fehlerarten. Validation. Wintersemester 2012/13. Dr. Tobias Lasser
Programm heute Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 01/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 1 Einführung Mathematische Grundlagen
MehrAbgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,
MehrAlgorithmische Geometrie: Schnittpunkte von Strecken
Algorithmische Geometrie: Schnittpunkte von Strecken Nico Düvelmeyer WS 2009/2010, 3.11.2009 3 Phasen im Algorithmenentwurf 1. Konzentration auf das Hauptproblem 2. Verallgemeinerung auf entartete Eingaben
MehrHashing II. Übersicht. 1 Hashing und Verkettung. 2 Offene Adressierung
Übersicht Datenstrukturen und Algorithmen Vorlesung 13: 1 Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 2 Effizienz
MehrWas bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone
Was bisher geschah Motivation, Beispiele geometrische Objekte im R 2 : Punkt, Gerade, Halbebene, Strecke, Polygon, ebene Zerlegung in Regionen (planare Graphen) maschinelle Repräsentation geometrischer
MehrData Mining auf Datenströmen Andreas M. Weiner
Technische Universität Kaiserslautern Fachbereich Informatik Lehrgebiet Datenverwaltungssysteme Integriertes Seminar Datenbanken und Informationssysteme Sommersemester 2005 Thema: Data Streams Andreas
MehrHumboldt-Universität zu Berlin Berlin, den Institut für Informatik
Humboldt-Universität zu Berlin Berlin, den 15.06.2015 Institut für Informatik Prof. Dr. Ulf Leser Übungen zur Vorlesung M. Bux, B. Grußien, J. Sürmeli, S. Wandelt Algorithmen und Datenstrukturen Übungsblatt
MehrDefinition der Kolmogorov-Komplexität I
Definition der Kolmogorov-Komplexität I Definition: Die Komplexität K A (x) eines Wortes x V + bezüglich des Algorithmus A ist die Länge der kürzesten Eingabe p {0, 1} + mit A(p) = x, d.h. in formalisierter
MehrKapitel 3: Sortierverfahren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrAlgorithmen und Datenstrukturen SS09. Foliensatz 15. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik
Foliensatz 15 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 16 Untere Schranken für das Vergleichsbasierte Sortieren TU
Mehr2.1. Konvexe Hülle in 2D
Wir wollen die konvexe Hülle einer Menge von Punkten P = {p 1,..., p n } in der Ebene R 2 bestimmen. y y x x Def. 21: Eine Teilmenge S der Ebene ist konvex gdw für jedes Paar das Liniensegment pq in S
MehrAlgorithmen und Datenstrukturen 1 Kapitel 5
Algorithmen und Datenstrukturen 1 Kapitel 5 Technische Fakultät robert@techfak.uni-bielefeld.de Vorlesung, U. Bielefeld, Winter 2005/2006 Kapitel 5: Effizienz von Algorithmen 5.1 Vorüberlegungen Nicht
MehrRessourcenmanagement in Netzwerken SS06 Vorl. 12,
Ressourcenmanagement in Netzwerken SS06 Vorl. 12, 30.6.06 Friedhelm Meyer auf der Heide Name hinzufügen 1 Prüfungstermine Dienstag, 18.7. Montag, 21. 8. und Freitag, 22.9. Bitte melden sie sich bis zum
MehrInformatik 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
MehrWillkommen zur Vorlesung Komplexitätstheorie
Willommen zur Vorlesung Komplexitätstheorie WS 2011/2012 Friedhelm Meyer auf der Heide V10, 9.1.2012 1 Organisation Prüfungen: mündlich, 20min 1. Periode: 13.-14.2. 2012 2. Periode: 26.-27.3. 2012 2 Themen
MehrRandomisierte Algorithmen 2. Erste Beispiele
Randomisierte Algorithmen Randomisierte Algorithmen 2. Erste Beispiele Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 35 Randomisierter Identitätstest
MehrEin RSA verwandtes, randomisiertes Public Key Kryptosystem
Seminar Codes und Kryptographie WS 2003 Ein RSA verwandtes, randomisiertes Public Key Kryptosystem Kai Gehrs Übersicht 1. Motivation 2. Das Public Key Kryptosystem 2.1 p-sylow Untergruppen und eine spezielle
MehrDigitale Signaturen. Einführung und das Schnorr Signatur Schema. 1 Digitale Signaturen Einführung & das Schnorr Signatur Schema.
Digitale Signaturen Einführung und das Schnorr Signatur Schema 1 Übersicht 1. Prinzip der digitalen Signatur 2. Grundlagen Hash Funktionen Diskreter Logarithmus 3. ElGamal Signatur Schema 4. Schnorr Signatur
MehrÜbung Algorithmen I
Übung Algorithmen I 10.5.17 Sascha Witt sascha.witt@kit.edu (Mit Folien von Lukas Barth, Julian Arz, Timo Bingmann, Sebastian Schlag und Christoph Striecks) Roadmap Listen Skip List Hotlist Amortisierte
MehrProbabilistische Pfadsuche
Probabilistische Pfadsuche Frage: Existiert ein Pfad in G von s nach t? Deterministisch mit Breitensuche lösbar in Zeit O( V + E ). Erfordert allerdings auch Speicher Ω( V ). Algorithmus PATH EINGABE:
MehrEine universelle Klasse von Hash-Funktionen
Eine universelle Klasse von Hash-Funktionen Annahmen: U = p, mit Primzahl p und U = {0,, p-1} Seien a {1,, p-1} und b {0,, p-1} Definiere wie folgt Satz: Die Menge ist eine universelle Klasse von Hash-Funktionen..
MehrÜbungsklausur Algorithmen I
Jun.-Prof. Hofheinz, Jun.-Prof. Meyerhenke (ITI, KIT) 08.06.2015 Übungsklausur Algorithmen I Aufgabe 1. (Algorithm Engineering) Nennen Sie zwei Konzepte, die Algorithm Engineering im Gegensatz zu theoretischer
MehrKap. 3: Sortieren (3)
Kap. 3: Sortieren (3) Professor Dr. Lehrstuhl für Algorithm Engineering, LS Fakultät für Informatik, TU Dortmund 6. VO DAP2 SS 2009 30. April 2009 Überblick Quick-Sort Analyse von Quick-Sort Quick-Sort
MehrRelationen und DAGs, starker Zusammenhang
Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind
MehrBsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994).
Primzahltest Wir wollen testen, ob eine gegebene Zahl n eine Primzahl ist Effizienter Algorithmus zum Faktorisieren ist unbekannt Kontraposition des Kleinen Satzes von Fermat liefert: Falls a n 1 1 mod
MehrAlle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).
8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame
MehrBlockchain. Eine Einführung in Funktionsweise und Nutzen
Blockchain Eine Einführung in Funktionsweise und Nutzen Martin Kreidenweis, TNG Technology Consulting 2018-07-06 Tag der Informatiklehrerinnen und -lehrer Was ist Bitcoin? Was ist Bitcoin Abstract. A
MehrRSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n)
RSA Parameter { öffentlich: N = pq mit p, q prim und e Z RSA Parameter φ(n) geheim: d Z φ(n) mit ed = 1 mod φ(n). Satz RSA Parameter Generierung RSA-Parameter (N, e, d) können in Zeit O(log 4 N) generiert
MehrKlausur Algorithmen und Datenstrukturen SS August Arbeitszeit 90 min
TU Ilmenau, Fakultät für Informatik und Automatisierung FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. M. Dietzfelbinger, Dipl.-Ing. C. Mattern Klausur Algorithmen und Datenstrukturen
MehrInformatik II, SS 2018
Informatik II - SS 2018 (Algorithmen & Datenstrukturen) Vorlesung 19 (27.6.2018) Dynamische Programmierung III Algorithmen und Komplexität Dynamische Programmierung DP Rekursion + Memoization Memoize:
MehrSeminar Kolmogorovkomplexität. Universität Potsdam Wintersemester 2009/10
Universität Potsdam Wintersemester 2009/10 Kolmogorovkomplexität Kolmogorovkomplexität (auch Algorithmische Komplexität ) ist der zentrale Begriff der Algorithmischen Informationstheorie (AIT). Kombiniert
MehrStud.-Nummer: Datenstrukturen & Algorithmen Seite 1
Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern
MehrOn the List Update Problem
DISS. ETH No. 14529, 2002 On the List Update Problem A dissertation submitted to the Swiss Federal Institute of Technology, ETH Zürich for the degree of Doctor of Technical Sciences presented by Christoph
MehrInformatik I. Informatik I Was haben wir gelernt? 28.2 Algorithmusbegriff Was geht nicht? 28.1 Was haben wir gelernt?
Informatik I 14.02.2014 28. Ausblick Informatik I 28. Ausblick Bernhard Nebel Albert-Ludwigs-Universität Freiburg 28.1 28.2 28.3 Was geht nicht? 14.02.2014 Bernhard Nebel (Universität Freiburg) Informatik
Mehr7. 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
MehrEffiziente Algorithmen (SS2015)
Effiziente Algorithmen (SS205) Kapitel 5 Approximation II Walter Unger Lehrstuhl für Informatik 2.06.205 07:59 5 Inhaltsverzeichnis < > Walter Unger 5.7.205 :3 SS205 Z Inhalt I Set Cover Einleitung Approximation
MehrStichpunktezettel fürs Tutorium
Stichpunktezettel fürs Tutorium Moritz und Dorian 18. November 2009 1 Chomskys Erstschlag 1.1 Reguläre Sprachen und Grammatiken Aufgabe 1. Wie sieht die Sprache zu den folgenden Grammatiken aus? 1. G =
MehrAlgorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8
ETH Zürich Institut für Theoretische Informatik Prof. Dr. Angelika Steger Florian Meier, Ralph Keusch HS 2017 Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 Lösungsvorschlag zu Aufgabe 1
MehrGrundlagen: Algorithmen und Datenstrukturen
Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dr. Hanjo Täubig Tobias Lieber Sommersemester 011 Übungsblatt 6. August 011 Grundlagen: Algorithmen und Datenstrukturen
Mehr21. 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
MehrStichpunktezettel fürs Tutorium
Stichpunktezettel fürs Tutorium Moritz und Dorian 11. November 009 1 Kleiner Fermat Behauptung. Seien a, b N relativ prim und b eine Primzahl. Dann ist a b 1 = 1. Beweis. Wir definieren die Funktion f
Mehr