mirror of
https://github.com/janishutz/eth-summaries.git
synced 2025-11-25 18:44:24 +00:00
74 lines
3.9 KiB
TeX
74 lines
3.9 KiB
TeX
\newsection
|
|
\section{Graph theory}
|
|
\begin{definition}[]{Graphs: Directed and Undirected}
|
|
A \textbf{graph} $G = (V, E)$ consists of:
|
|
\begin{itemize}
|
|
\item A set of \textbf{vertices} (or nodes) $V$, and
|
|
\item A set of \textbf{edges} $E$, representing connections between pairs of vertices.
|
|
\end{itemize}
|
|
Graphs can be classified into:
|
|
\begin{itemize}
|
|
\item \textbf{Undirected Graphs:} Edges have no direction, represented as unordered pairs $\{u, v\}$.
|
|
\item \textbf{Directed Graphs (Digraphs):} Edges have a direction, represented as ordered pairs $(u, v)$.
|
|
\end{itemize}
|
|
\end{definition}
|
|
|
|
\begin{terms}[]{Graph Theory}
|
|
\begin{itemize}
|
|
\item \textbf{Adjacent (Neighbors):} Two vertices $u$ and $v$ are adjacent if there is an edge between them.
|
|
\item \textbf{Degree:}
|
|
\begin{itemize}
|
|
\item \textbf{Undirected Graph:} The degree of a vertex $v$ is the number of edges incident to it.
|
|
\item \textbf{Directed Graph:}
|
|
\begin{itemize}
|
|
\item \textbf{In-Degree:} Number of incoming edges to $v$.
|
|
\item \textbf{Out-Degree:} Number of outgoing edges from $v$.
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\item \textbf{Path:} A sequence of vertices where each adjacent pair is connected by an edge.
|
|
\begin{itemize}
|
|
\item \textbf{Simple Path:} A path with no repeated vertices.
|
|
\item \textbf{Cycle:} A path that starts and ends at the same vertex.
|
|
\end{itemize}
|
|
\item \textbf{Connected Graph:} A graph where there is a path between any two vertices.
|
|
\begin{itemize}
|
|
\item \textbf{Strongly Connected:} In a directed graph, every vertex is reachable from every other vertex.
|
|
\item \textbf{Weakly Connected:} A directed graph becomes connected if the direction of edges is ignored.
|
|
\end{itemize}
|
|
\item \textbf{Subgraph:} A graph formed from a subset of vertices and edges of the original graph.
|
|
\item \textbf{Complete Graph:} A graph in which every pair of vertices is connected by an edge.
|
|
\item \textbf{Weighted Graph:} A graph where each edge has an associated weight or cost.
|
|
\item \textbf{Multigraph:} A graph that may have multiple edges (parallel edges) between the same pair of vertices.
|
|
\item \textbf{Self-Loop:} An edge that connects a vertex to itself.
|
|
\item \textbf{Bipartite Graph:} A graph whose vertices can be divided into two disjoint sets such that every edge connects a vertex in one set to a vertex in the other set.
|
|
\item \textbf{Tree:} A graph is a tree if it is connected and has no cycles (sufficient condition), a tree has $n - 1$ edges for $n$ vertices (necessary condition).
|
|
\item \textbf{Reachability:} A vertex $u$ is called \textit{reachable} from $v$, if there exists a walk or path with endpoints $u$ and $v$.
|
|
\end{itemize}
|
|
\end{terms}
|
|
|
|
\begin{example}[]{Directed and Undirected Graphs}
|
|
\begin{center}
|
|
\begin{tikzpicture}[node distance=1.5cm, main/.style={circle, draw, fill=blue!20, minimum size=10mm, inner sep=0pt}]
|
|
% Undirected graph
|
|
\node[main] (1) {1};
|
|
\node[main] (2) [right of=1] {2};
|
|
\node[main] (3) [below of=1] {3};
|
|
\node[main] (4) [below of=2] {4};
|
|
\draw (1) -- (2);
|
|
\draw (1) -- (3);
|
|
\draw (3) -- (4);
|
|
\draw (2) -- (4);
|
|
|
|
% Directed graph
|
|
\node[main] (5) [right of=2, xshift=2cm] {A};
|
|
\node[main] (6) [right of=5] {B};
|
|
\node[main] (7) [below of=5] {C};
|
|
\node[main] (8) [below of=6] {D};
|
|
\draw[->] (5) -- (6);
|
|
\draw[->] (5) -- (7);
|
|
\draw[->] (7) -- (8);
|
|
\draw[->] (6) -- (8);
|
|
\end{tikzpicture}
|
|
\end{center}
|
|
\end{example}
|