Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

📚 The CoCalc Library - books, templates and other resources

132931 views
License: OTHER
1
\subsection{Königsberger Brückenproblem}
2
3
\framedgraphic{Königsberg heute}{../images/koenigsberg-bruecken-luftbild}
4
5
\framedgraphic{Königsberger Brückenproblem}{../images/Konigsberg_bridges.png}
6
7
\framedgraphic{Übersetzung in einen Graphen}{../images/Konigsberg_bridges-graph.png}
8
9
\begin{frame}{Übersetzung in einen Graphen}
10
\begin{center}
11
\adjustbox{max size={\textwidth}{0.8\textheight}}{
12
\input{koenigsberg/koenigsberg-1}
13
}
14
\end{center}
15
\end{frame}
16
17
\begin{frame}{Eulerscher Kreis}
18
\begin{block}{Eulerscher Kreis}
19
Sei $G$ ein Graph und $A$ ein Kreis in $G$.
20
21
$A$ heißt \textbf{eulerscher Kreis} $:\Leftrightarrow \forall_{k \in K}: k \in A$.
22
\end{block}
23
24
\begin{block}{Eulerscher Graph}
25
Ein Graph heißt \textbf{eulersch}, wenn er einen eulerschen Kreis enthält.
26
\end{block}
27
\end{frame}
28
29
\begin{frame}{Hamiltonkreis}
30
\begin{alertblock}{Achtung}
31
Verwechslungsgefahr: Hamiltonkreis $\neq$ Eulerkreis
32
\end{alertblock}
33
\pause
34
\begin{block}{Hamiltonkreis}
35
Sei $G$ ein Graph und $A$ ein Kreis in $G$.
36
37
$A$ heißt \textbf{Hamilton-Kreis} $:\Leftrightarrow \forall_{e \in E}: e \text{ ist genau ein mal in } A$.
38
\end{block}
39
40
\begin{block}{Eulerscher Kreis}
41
Sei $G$ ein Graph und $A$ ein Kreis in $G$.
42
43
$A$ heißt \textbf{eulerscher Kreis} $:\Leftrightarrow \forall_{k \in K}: k \in A$.
44
\end{block}
45
\end{frame}
46
47
\pgfdeclarelayer{background}
48
\pgfsetlayers{background,main}
49
\begin{frame}{Eulerscher Kreis}
50
\newcommand\n{5}
51
\begin{center}
52
\adjustbox{max size={\textwidth}{0.8\textheight}}{
53
\begin{tikzpicture}
54
\foreach \number in {1,...,\n}{
55
\node[vertex] (N-\number) at ({\number*(360/\n)}:5.4cm) {};
56
}
57
58
\foreach \number in {1,...,\n}{
59
\foreach \y in {1,...,\n}{
60
\draw (N-\number) -- (N-\y);
61
}
62
}
63
64
\node<2->[vertex,red] (N-1) at ({1*(360/\n)}:5.4cm) {};
65
66
\begin{pgfonlayer}{background}
67
\path<2->[selected edge] (N-1.center) edge node {} (N-2.center);
68
\path<3->[selected edge] (N-2.center) edge node {} (N-3.center);
69
\path<4->[selected edge] (N-3.center) edge node {} (N-4.center);
70
\path<5->[selected edge] (N-4.center) edge node {} (N-5.center);
71
\path<6->[selected edge] (N-5.center) edge node {} (N-1.center);
72
\path<7->[selected edge] (N-1.center) edge node {} (N-3.center);
73
\path<8->[selected edge] (N-3.center) edge node {} (N-5.center);
74
\path<9->[selected edge] (N-5.center) edge node {} (N-2.center);
75
\path<10->[selected edge] (N-2.center) edge node {} (N-4.center);
76
\path<11->[selected edge](N-4.center) edge node {} (N-1.center);
77
\end{pgfonlayer}
78
\end{tikzpicture}
79
}
80
\end{center}
81
\end{frame}
82
83
\pgfdeclarelayer{background}
84
\pgfsetlayers{background,main}
85
\begin{frame}{Hamilton-Kreis, kein EK}
86
\begin{center}
87
\adjustbox{max size={\textwidth}{0.8\textheight}}{
88
\begin{tikzpicture}
89
\node (a)[vertex] at (0,0) {};
90
\node (b)[vertex] at (2,0) {};
91
\node (c)[vertex] at (2,2) {};
92
\node (d)[vertex] at (0,2) {};
93
94
\foreach \from/\to in {a/b,b/c,c/d,d/a,a/c,b/d}
95
\draw[line width=2pt] (\from) -- (\to);
96
97
\node<2->[vertex,red] (a) at (0,0) {};
98
\node<3->[vertex,red] (b) at (2,0) {};
99
\node<4->[vertex,red] (c) at (2,2) {};
100
\node<5->[vertex,red] (d) at (0,2) {};
101
\begin{pgfonlayer}{background}
102
\path<3->[selected edge,black!50] (a.center) edge node {} (b.center);
103
\path<4->[selected edge,black!50] (b.center) edge node {} (c.center);
104
\path<5->[selected edge,black!50] (c.center) edge node {} (d.center);
105
\path<6->[selected edge,black!50] (d.center) edge node {} (a.center);
106
\end{pgfonlayer}
107
\end{tikzpicture}
108
}
109
\end{center}
110
\end{frame}
111
112
\pgfdeclarelayer{background}
113
\pgfsetlayers{background,main}
114
\begin{frame}{Eulerkreis, kein HK}
115
\begin{center}
116
\adjustbox{max size={\textwidth}{0.8\textheight}}{
117
\begin{tikzpicture}
118
\node (a)[vertex] at (0,0) {};
119
\node (b)[vertex] at (2,0) {};
120
\node (c)[vertex] at (2,2) {};
121
\node (d)[vertex] at (0,2) {};
122
\node (e)[vertex] at (1,1) {};
123
124
\foreach \from/\to in {a/b,b/c,c/d,d/a,b/e,e/d}
125
\draw[line width=2pt] (\from) -- (\to);
126
\draw[line width=2pt] (b) to[bend right] (d);
127
128
\node<2->[vertex,lime] (d) at (0,2) {};
129
\node<3->[vertex,red] (a) at (0,0) {};
130
\node<4->[vertex,red] (b) at (2,0) {};
131
\node<5->[vertex,red] (c) at (2,2) {};
132
\node<6->[vertex,lime] (d) at (0,2) {};
133
\node<7->[vertex,red] (e) at (1,1) {};
134
\node<8->[vertex,red] (b) at (2,0) {};
135
\begin{pgfonlayer}{background}
136
\path<3->[selected edge,black!50] (d.center) edge node {} (a.center);
137
\path<4->[selected edge,black!50] (a.center) edge node {} (b.center);
138
\path<5->[selected edge,black!50] (b.center) edge node {} (c.center);
139
\path<6->[selected edge,black!50] (c.center) edge node {} (d.center);
140
\path<7->[selected edge,black!50] (d.center) edge node {} (e.center);
141
\path<8->[selected edge,black!50] (e.center) edge node {} (b.center);
142
\path<9->[selected edge,black!50] (b.center) to[bend right] (d.center);
143
\end{pgfonlayer}
144
\end{tikzpicture}
145
}
146
\end{center}
147
\end{frame}
148
149
\subsection{Satz von Euler}
150
\begin{frame}{Satz von Euler}
151
\begin{block}{Satz von Euler}
152
Wenn ein Graph $G$ eulersch ist, dann hat jede Ecke von $G$ geraden Grad.
153
\end{block}
154
155
\pause
156
157
$\Rightarrow$ Wenn $G$ eine Ecke mit ungeraden Grad hat, ist $G$ nicht eulersch.
158
159
\pause
160
161
\begin{gallery}
162
\galleryimage{vollstaendig/k-5}
163
\galleryimage{koenigsberg/koenigsberg-1}
164
\end{gallery}
165
\end{frame}
166
167
\begin{frame}{Beweis: Satz von Euler}
168
\textbf{Beh.:} $G$ ist eulersch $\Rightarrow \forall e \in E: $ Grad($e$) $\equiv 0 \mod 2$ \pause \\
169
\textbf{Bew.:} Eulerkreis geht durch jede Ecke $e \in E$\pause, \\
170
also geht der Eulerkreis (eventuell mehrfach) in $e$ hinein und hinaus \pause \\
171
$\Rightarrow$ Grad($e$) $\equiv 0 \mod 2$
172
\end{frame}
173
174
\begin{frame}{Umkehrung des Satzes von Euler}
175
\begin{block}{Umkehrung des Satzes von Euler}
176
Wenn in einem zusammenhängenden Graphen $G$ jede Ecke geraden Grad hat, dann
177
ist $G$ eulersch.
178
\end{block}
179
\pause
180
\underline{Beweis:} Induktion über Anzahl $m$ der Kanten\\
181
\pause
182
\underline{I.A.:} $m=0$: $G$ ist eulersch. \cmark\\
183
\pause
184
$m=1$: Es gibt keinen Graphen in dem jede Ecke geraden Grad hat. \cmark\\
185
\pause
186
$m=2$: Nur ein Graph möglich. Dieser ist eulersch. \cmark\\
187
\pause
188
189
\underline{I.V.:} Sei $m \in \mathbb{N}_0$ beliebig, aber fest und
190
es gelte: Für
191
alle zusammenhängenden Graphen $G$ mit höchstens $m$ Kanten, bei
192
denen jede Ecke geraden Grad hat, ist $G$ eulersch.
193
194
\pause
195
196
\underline{I.S.:} Sei $G=(E,K)$ mit $2 \leq m = |K|$. $G$ ist zus. \pause
197
$\Rightarrow$ Jede Ecke von $G$ hat min. Grad 2. \pause
198
$\xRightarrow[]{A. 5}$ Es gibt einen Kreis $C$ in $G$.\pause
199
200
\dots
201
202
\end{frame}
203
204
\begin{frame}{Umkehrung des Satzes von Euler}
205
\begin{block}{Umkehrung des Satzes von Euler}
206
Wenn in einem zusammenhängenden Graphen $G$ jede Ecke geraden Grad hat, dann
207
ist $G$ eulersch.
208
\end{block}
209
\dots
210
211
Sei
212
\[G_C = (E_C, K_C) \]
213
Graph zu Kreis $C$ und
214
215
\[G^* = (E, K \setminus K_C).\] \pause
216
$\Rightarrow$ Alle Knoten jeder Zusammenhangskomponente in $G^*$ haben geraden Grad\\
217
\pause
218
$\xRightarrow[]{I.V.}$ Alle $n$ Zhsgk. haben Eulerkreise $C_1, \dots, C_n$\\
219
\pause
220
$\Rightarrow$ $C_1, \dots, C_n$ können in $C$ \enquote{eingehängt} werden\\
221
\pause
222
$\Rightarrow G$ ist eulersch\pause $\Rightarrow $ Beh.
223
\end{frame}
224
225
\begin{frame}{Wie findet man Eulerkreise?}
226
\begin{algorithm}[H]
227
\begin{algorithmic}
228
\Require $G = (E, K)$ ein eulerscher Graph.
229
\\
230
\State $C \gets$ leerer Kreis
231
\Repeat
232
\State $C_\text{tmp} \gets \text{ein beliebiger Kreis}$ \Comment{vgl. Aufgabe 5}
233
\State $C \gets C $ vereinigt mit $C_\text{tmp}$
234
\State Entferne Kanten in $C_\text{tmp}$ aus $G$
235
\State Entferne isolierte Ecken
236
\Until{$C$ ist Eulerkreis}
237
\\
238
\State \textbf{Ergebnis:} Eulerkreis $C$
239
\end{algorithmic}
240
\caption{Algorithmus von Hierholzer}
241
\label{alg:Hierholzer}
242
\end{algorithm}
243
\end{frame}
244
245
\begin{frame}{Sind Eulerkreise eindeutig?}
246
\begin{center}
247
\large Sind Eulerkreise bis auf Rotation und Symmetrie eindeutig?
248
\end{center}
249
\end{frame}
250
251
\tikzstyle{markedCircle}=[blue,line width=1pt,rotate=90,decorate,decoration={snake, segment length=2mm, amplitude=0.4mm},->]
252
\tikzstyle{markedCircle2}=[red,line width=1pt,rotate=90,decorate,decoration={snake, segment length=3mm, amplitude=0.4mm},->]
253
\begin{frame}{Sind Eulerkreise eindeutig?}
254
\begin{tikzpicture}[scale=1.9]
255
\node[vertex,label=$a_1$] (a1) at (1,2) {};
256
\node[vertex,label=$b_1$] (b1) at (3,2) {};
257
\node[vertex,label=$c_1$] (c1) at (2,1) {};
258
259
\node[vertex,label=$b_2$] (b2) at (0,2) {};
260
\node[vertex,label=$c_2$] (c2) at (1,3) {};
261
262
\node[vertex,label=$c_3$] (c3) at (3,3) {};
263
\node[vertex,label=$a_3$] (a3) at (4,2) {};
264
265
\draw (a1) -- (b1) -- (c1) -- (a1) -- cycle;
266
\draw (a1) -- (b2) -- (c2) -- (a1) -- cycle;
267
\draw (b1) -- (c3) -- (a3) -- (b1) -- cycle;
268
269
\node<2->[vertex, red] (a1) at (1,2) {};
270
271
\draw<2->[color=blue, markedCircle,->] (a1.center) -- (b2.center);
272
\draw<3->[color=blue, markedCircle] (b2.center) -- (c2.center);
273
\draw<4->[color=blue, markedCircle] (c2.center) -- (a1.center);
274
\draw<5->[color=blue, markedCircle] (a1.center) -- (b1.center);
275
\draw<6->[color=blue, markedCircle] (b1.center) -- (c3.center);
276
\draw<7->[color=blue, markedCircle] (c3.center) -- (a3.center);
277
\draw<8->[color=blue, markedCircle] (a3.center) -- (b1.center);
278
\draw<9->[color=blue, markedCircle] (b1.center) -- (c1.center);
279
\draw<10->[color=blue, markedCircle] (c1.center) -- (a1.center);
280
281
\draw<11->[markedCircle2] (a1) -- (b2.center);
282
\draw<12->[markedCircle2] (b2.center) -- (c2.center);
283
\draw<13->[markedCircle2] (c2.center) -- (a1.center);
284
\draw<14->[markedCircle2] (a1.center) -- (b1.center);
285
\draw<15->[markedCircle2] (b1.center) -- (a3.center);
286
\draw<16->[markedCircle2] (a3.center) -- (c3.center);
287
\draw<17->[markedCircle2] (c3.center) -- (b1.center);
288
\draw<18->[markedCircle2] (b1.center) -- (c1.center);
289
\draw<19->[markedCircle2] (c1.center) -- (a1.center);
290
\end{tikzpicture}
291
292
\pause
293
$\Rightarrow$ Eulerkreise sind im Allgemeinen nicht eindeutig
294
\end{frame}
295
296
\begin{frame}{Offene eulersche Linie}
297
\begin{block}{Offene eulersche Linie}
298
Sei $G$ ein Graph und $A$ ein Weg, der kein Kreis ist.
299
300
$A$ heißt \textbf{offene eulersche Linie} von $G :\Leftrightarrow$ Jede Kante
301
in $G$ kommt genau ein mal in $A$ vor.
302
\end{block}
303
304
Ein Graph kann genau dann "`in einem Zug"' gezeichnet werden, wenn er eine
305
offene eulersche Linie besitzt.
306
\end{frame}
307
308
\begin{frame}{Offene eulersche Linie}
309
\begin{block}{Satz 8.2.3}
310
Sei $G$ ein zusammenhängender Graph.
311
312
$G$ hat eine offene eulersche Linie $:\Leftrightarrow G$ hat genau zwei Ecken
313
ungeraden Grades.
314
\end{block}
315
316
\pause
317
318
\begin{block}{Beweis "`$\Rightarrow"'$}
319
Sei $G=(E, K)$ ein zusammenhängender Graph und $L = (e_0, \dots, e_s)$ eine offene
320
eulersche Linie. \pause
321
Sei $G^* = (E, K \cup \Set{e_s, e_0})$. \pause
322
Es gibt einen Eulerkreis in $G^*$ \pause \\
323
$\xLeftrightarrow{\text{Satz von Euler}}$ In $G^*$ hat jede Ecke geraden Grad \pause \\
324
Der Grad von nur zwei Kanten wurde um jeweils 1 erhöht \pause \\
325
$\Leftrightarrow$ in $G$ haben genau 2 Ecken ungeraden Grad. Diese heißen $e_0, e_s$. $\blacksquare$
326
\end{block}
327
328
\pause
329
Rückrichtung analog
330
\end{frame}
331
332
\pgfdeclarelayer{background}
333
\pgfsetlayers{background,main}
334
\begin{frame}{Haus des Nikolaus}
335
\tikzstyle{selected edge} = [draw,line width=5pt,-,red!50]
336
\begin{center}
337
\adjustbox{max size={\textwidth}{0.8\textheight}}{
338
\begin{tikzpicture}
339
\node[vertex] (a) at (0,0) {};
340
\node[vertex] (b) at (2,0) {};
341
\node[vertex] (c) at (2,2) {};
342
\node[vertex] (d) at (0,2) {};
343
\node[vertex] (e) at (1,4) {};
344
345
\draw (a) -- (d);
346
\draw (d) -- (b);
347
\draw (b) -- (c);
348
\draw (c) -- (d);
349
\draw (d) -- (e);
350
\draw (e) -- (c);
351
\draw (c) -- (a);
352
\draw (a) -- (b);
353
354
\node<2->[vertex, red] (a) at (0,0) {};
355
356
\begin{pgfonlayer}{background}
357
\path<2->[selected edge] (a.center) edge node {} (d.center);
358
\path<3->[selected edge] (d.center) edge node {} (b.center);
359
\path<4->[selected edge] (b.center) edge node {} (c.center);
360
\path<5->[selected edge] (c.center) edge node {} (d.center);
361
\path<6->[selected edge] (d.center) edge node {} (e.center);
362
\path<7->[selected edge] (e.center) edge node {} (c.center);
363
\path<8->[selected edge] (c.center) edge node {} (a.center);
364
\path<9->[selected edge] (a.center) edge node {} (b.center);
365
\end{pgfonlayer}
366
\end{tikzpicture}
367
}
368
\end{center}
369
\end{frame}
370
371