agt_exercise/übung_6/aufgabe_3.tex

42 lines
995 B
TeX
Raw Normal View History

2026-05-30 23:59:28 +02:00
\section{Matchings in allgemeinen Graphen}
\begin{tasks}
\item
2026-05-31 21:32:18 +02:00
\begin{pseudocode}
M = $\emptyset$
visited = Array von False der Größe $|V|$ // Markiert gematchte Knoten
for e in E do
if nicht visited[u] und nicht visited[v] then
M = $M \cup \{e\}$
visited[u] = True
visited[v] = True
return M
\end{pseudocode}
Angenommen M wäre erweiterbar (d.h. es gibt eine Kante \{u,v\} mit u,v $\notin$ V(M)). Dann wurden sowohl u als auch v während des Algorithmus beim Durchlaufen der Kante \{u,v\} als frei angesehen und wäre somit der Menge M hinzugefügt worden. Das ist eine Widerspruch. \\\\
\textbf{Laufzeit:} \\
Initialisierung des Arrays: $\Oh(V)$\\
Schleife: Jede Kante wird genau einmal betrachtet ($\Oh(V)$) und die Überprüfung und Markierung passieren in $\Oh(1)$. Also insgesamt $\Oh(E)$\\
Das ergibt eine Gesamtlaufzeit von $\Oh(V+E)$
\points{3}
2026-05-30 23:59:28 +02:00
\item
2026-05-31 21:32:18 +02:00
\points{3}
2026-05-30 23:59:28 +02:00
\item
2026-05-31 21:32:18 +02:00
\points{2}
2026-05-30 23:59:28 +02:00
\item
2026-05-31 21:32:18 +02:00
\points{3}
2026-05-30 23:59:28 +02:00
\item
2026-05-31 21:32:18 +02:00
\points{2}
2026-05-30 23:59:28 +02:00
\end{tasks}