Grundbegriffe der Informatik

Ähnliche Dokumente
Grundbegriffe der Informatik

Tutorium 23 Grundbegriffe der Informatik (7. Sitzung)

Relationen und Graphentheorie

2. Repräsentationen von Graphen in Computern

6. Transitive Hülle. 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle Ring Z(+, ) Semiring N(+, )

Graphenalgorithmen I

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

15. Elementare Graphalgorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Routing Algorithmen. Begriffe, Definitionen

Algorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik

Kürzeste Wege in Graphen. Orte mit Straßenverbindungen. Coma I Rolf Möhring

Kodieren Von Graphen

Informatik I Tutorium WS 07/08

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

3. Die Datenstruktur Graph

Graphen. Graphen und ihre Darstellungen

7. Transitive Hülle. Kante des Graphen. Zusatz-Kante der transitiven Hülle

Einheit 11 - Graphen

Grundbegriffe der Informatik

MLAN1 1 MATRIZEN 1 0 = A T =

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

Vorlesung Datenstrukturen

3 Determinanten, Eigenwerte, Normalformen

a 11 a 12 a 1(m 1) a 1m a n1 a n2 a n(m 1) a nm Matrizen Betrachten wir das nachfolgende Rechteckschema:

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke

Guten Morgen und Willkommen zur Saalübung!

Konzepte der Informatik

Lineare Differenzengleichungen

Kapitel 6: Matrixrechnung (Kurzeinführung in die Lineare Algebra)

Aufgabe 24 Die Wahrheitswerte von A A B und B sind immer gleich:

Massive Parallelität : Neuronale Netze

Algorithmische Methoden zur Netzwerkanalyse

Grundbegriffe der Informatik

Lineare Algebra. Beni Keller SJ 16/17

Motivation Kap. 6: Graphen

5. Bäume und Minimalgerüste

bekannt: Eliminationsverfahren von Gauß Verfahren führt zu einer Zerlegung der Koeffizientenmatrix: A = LR A = LR

Eigenwerte und Eigenvektoren

Algorithmen & Komplexität

Algebraische und arithmetische Algorithmen

16. All Pairs Shortest Path (ASPS)

Algorithmen und Datenstrukturen 2

Kap. 5: Graphen. Carsten Gutwenger Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund. 17. VO DAP2 SS

Für die Anzahl der Kanten in einem vollständigen Graphen (und damit für die maximale Anzahl von Kanten in einem einfachen Graphen) gilt:

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Klausur Informatik B April Teil I: Informatik 3

Vorlesung Datenstrukturen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Wie wird ein Graph dargestellt?

Beispiele 1. Gegeben ist das lineare System. x+4y +3z = 1 2x+5y +9z = 14 x 3y 2z = 5. Die erweiterte Matrix ist

37 Gauß-Algorithmus und lineare Gleichungssysteme

Matrix: Eine rechteckige Anordnung reeller Zahlen a ij (i = 1,..., n i ; j = 1,..., m) in Zeilen und Spalten. Die a ij heiÿen Elemente von A.

FAKULTÄT FÜR INFORMATIK

Matrizen, Determinanten, lineare Gleichungssysteme

Beispiele 1. Gegeben sei das lineare Gleichungssystem mit erweiterter Matrix (A

Algorithmen und Komplexität

Programmiertechnik II

Mathematik für Informatiker II Übungsblatt 7

Algorithmische Methoden zur Netzwerkanalyse

Einführung in die Informatik 2

Kapitel 2: Matrizen. 2.1 Matrizen 2.2 Determinanten 2.3 Inverse 2.4 Lineare Gleichungssysteme 2.5 Eigenwerte 2.6 Diagonalisierung

Blockmatrizen. Beispiel 1 Wir berechnen das Produkt von A R 4 6 mit B R 6 4 :

Relationen und DAGs, starker Zusammenhang

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

Tutorium: Diskrete Mathematik. Matrizen

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Einführung in die Informatik I

Nachbarschaft, Grad, regulär, Inzidenz

Algorithmen und Datenstrukturen

Invertierbarkeit von Matrizen

Grundbegriffe der Informatik

Lineare Algebra: Determinanten und Eigenwerte

Lineare Gleichungssysteme und Matrizen

35 Matrixschreibweise für lineare Abbildungen

Algorithmen II Vorlesung am

Grundlagen: Algorithmen und Datenstrukturen

Informatik I WS 07/08 Tutorium 24

Beziehungsmatrix. Jürgen Lerner

Programmierkurs Python

Programmierkurs Python II

Algorithmen und Datenstrukturen 2-1. Seminar -

Kapitel 6: Graphalgorithmen Gliederung

MATRIZEN. Eine Matrix ist eine rechteckige Anordnung von Zahlen, als ein Schema betrachtet. a 11 a a 1n a 21. a a 2n A = a m1 a m2...

Transkript:

Grundbegriffe der Informatik Tutorium 24-6. Sitzung Marcus Georgi tutorium@marcusgeorgi.de 04.12.2009 1 Repräsentation von Graphen im Rechner Adjazenzlisten Adjazenzmatrizen Wegematrizen 2 Erreichbarkeitsrelationen E 2 Matrixmultiplikation Matrixaddition Erreichbarkeitsrelation Marcus Georgi Grundbegriffe der Informatik 2 / 29

Adjazenzlisten Definition Die Adjazenzliste ist eine Liste über alle Knoten, in der jedes Element eine Liste der adjazenten Knoten enthält. 4 3 2 (1): (2) (2): (3) (4) (3): (4) (4): 1 Marcus Georgi Grundbegriffe der Informatik 4 / 29 Eigenschaften Vorteile schneller Zugriff auf benachbarte Knoten Nachteile Kantenprüfungen benötigen das Durchlaufen der Listen Marcus Georgi Grundbegriffe der Informatik 5 / 29

Definition Definition Die Adjazenzmatrix ist eine V V -Matrix, welche angibt, ob zwischen zwei Knoten eine Kante existiert. Dabei enthält die Matrix eine 1 in Zeile i und Spalte j, falls i und j adjazent sind. 4 2 3 1 2 3 4 1 0 1 0 0 2 0 0 1 1 3 0 0 0 1 4 0 0 0 0 1 Marcus Georgi Grundbegriffe der Informatik 6 / 29 Eigenschaften Vorteile Schneller Überblick über die Verbindung von Knoten Nachteile Aufwendig, alle Nachbarn eines Knoten herauszufinden Marcus Georgi Grundbegriffe der Informatik 7 / 29

4 2 1 3 (1): (2) (2): (3) (4) (3): (4) (4): 1 2 3 4 1 0 1 0 0 2 0 0 1 1 3 0 0 0 1 4 0 0 0 0 Marcus Georgi Grundbegriffe der Informatik 8 / 29 Aufgaben Woran erkennt man, ob ein Graph Schleifen hat? Einsen auf der Diagonale Welche Eigenschaft hat die Adjazentmatrix von ungerichteten Graphen? Symmetrie zur Hauptdiagonalen Welcher Graph wird durch folgende Matrix repräsentiert? 1 2 3 1 1 1 1 2 1 1 1 3 1 1 1 1 3 2 Marcus Georgi Grundbegriffe der Informatik 9 / 29

4 5 2 3 1 1 2 3 4 5 1 0 1 0 0 0 2 0 0 1 1 0 3 0 0 0 1 1 4 0 0 0 0 1 5 0 0 0 1 0 1 2 3 4 1 1 0 1 0 2 0 0 0 1 3 0 1 0 1 4 0 1 1 0 1 4 2 3 Marcus Georgi Grundbegriffe der Informatik 10 / 29 Definition Definition Eine Wegematrix gibt an, ob ein Knoten u von einem Knoten v aus erreichbar ist. Dabei enthält sie in Zeile i und Spalte j eine 1, wenn ein Pfad von i nach j existiert. Marcus Georgi Grundbegriffe der Informatik 11 / 29

Beispiel 1 2 3 4 1 2 3 4 1 1 1 1 1 2 0 1 0 0 3 0 1 1 1 4 0 1 1 1 Marcus Georgi Grundbegriffe der Informatik 12 / 29 Fragen Wie sieht die Wegematrix für A=alles Einsen aus? W = A Wann gilt allgemein W = A? Wenn die Kantenrelation reflexiv und transitiv ist. Marcus Georgi Grundbegriffe der Informatik 13 / 29

Motivation 0 1 2 3 Wie bestimmt man E 2? 0 1 2 3 0 0 1 0 0 1 0 0 1 0 2 0 0 1 1 3 0 0 0 0 Marcus Georgi Grundbegriffe der Informatik 15 / 29 Zeilen und Spalten durchgehen 0 1 2 3 0 0 1 0 0 1 0 0 1 0 2 0 0 1 1 3 0 0 0 0 0 1 2 3 0 0 1 0 0 1 0 0 1 0 2 0 0 1 1 3 0 0 0 0 Marcus Georgi Grundbegriffe der Informatik 16 / 29

Matrix von E 2 0 1 2 3 0 0 0 1 0 1 0 0 1 1 2 0 0 1 1 3 0 0 0 0 Marcus Georgi Grundbegriffe der Informatik 17 / 29 Matrixmultiplikation Vereinfachung Das eben gezeigte Verfahren lässt sich durch Matrixmultiplikation formalisieren. Seien A K m p, B K p n, dann gibt es ein C K m n mit: (C) ij = p (A) ik (B) kj k=1 Marcus Georgi Grundbegriffe der Informatik 18 / 29

Beispiel Seien A und B (beide K n n ) wie folgt gegeben: { { 1 i j (A) ij = 0 sonst, (B) 1 i < j ij = 0 sonst Berechne A B und B A! Marcus Georgi Grundbegriffe der Informatik 19 / 29 Ergebnis A B = B A = 0 1 1 1 0 1 2 2 0 1 2 3 0 1 2 3.............. 3 3 2 1 2 2 2 1 1 1 1 1 0 0 0 0 Marcus Georgi Grundbegriffe der Informatik 20 / 29

Die Einheitsmatrix Zu jedem n N gibt es eine Einheitsmatrix I K n n folgender Art: 1 0 0 { 1 i = j 0 1 I ij = 0 sonst, I =..... 1 0 0 0 1 Marcus Georgi Grundbegriffe der Informatik 21 / 29 Die Einheitsmatrix Für jede Matrix A K m n : I A = A = A I Beachte: Das I auf der linken Seite ist K m m, das auf der rechten Seite ist K n n! Marcus Georgi Grundbegriffe der Informatik 22 / 29

Definition Seien A, B K m n Matrixaddition (A + B) ij = A ij + B ij Marcus Georgi Grundbegriffe der Informatik 23 / 29 Aufgabe 1 2 4 3 2 5 8 3 1 0 0 7 2 4 4 3 + 1 6 6 11 4 9 14 11 10 0 4 9 8 6 6 6 0 4 2 8 2 4 6 8 9 0 4 2 6 2 2 3 = Marcus Georgi Grundbegriffe der Informatik 24 / 29

Potenzen von Matrizen Sei A K n n. Dann sei A k wie folgt definiert: A 0 = I i N 0 : A i+1 = A A i Marcus Georgi Grundbegriffe der Informatik 25 / 29 Frage Sei A eine Adjazenzmatrix. Was drückt A 2 aus? Anzahl der Pfade der Länge 2 von i nach j. Marcus Georgi Grundbegriffe der Informatik 26 / 29

E Die Wegematrix zu einer Adjazenzmatrix A, also die Matrix-Repräsentation von E kann (unter anderem) berechnet werden durch: W = n 1 A i i=0 Die Berechnung dieses Ausdrucks kann auf verschiedene Arten optimiert werden. Eine sehr gute gibt es das nächste mal: Algorithmus von Warshall Marcus Georgi Grundbegriffe der Informatik 27 / 29 Inhalt des Tutoriums Was ist der Unterschied zwischen Adjazenzlisten und Adjazenzmatrizen? Was ist eine Wegematrix? Wie finde ich E 2 zu einer Kantenrelation E? Und was ist das? Wie multipliziere ich Matrizen? Wie addiere ich Matrizen? Wie potenziere ich Matrizen? Wie berechne ich mit der Adjazenzmatrix die Wegematrix? Marcus Georgi Grundbegriffe der Informatik 28 / 29

Danke für die Aufmerksamkeit Marcus Georgi Grundbegriffe der Informatik 29 / 29