7.2 KiB
title | TARGET DECK | FILE TAGS | tags | ||
---|---|---|---|---|---|
Graphs | Obsidian::STEM | data_structure::graph |
|
Overview
There are two standard ways of representing graphs in memory: adjacency-list representations and adjacency-matrix representations.
%%ANKI
Basic
Using asymptotic notation, how do the number of edges in a graph relate to the number of vertices?
Back: \lvert E \rvert = O(\lvert V^2 \rvert)
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
For graph G = \langle V, E \rangle
, why is \lvert E \rvert = O(\lvert V^2 \rvert)
?
Back: Because E
is a binary relation on V
.
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic What are the two standard ways of representing graphs in memory? Back: The adjacency-list and adjacency-matrix representation. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic Which standard graph representation is preferred for sparse graphs? Back: Adjacency-list representations. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic Which standard graph representation is preferred for dense graphs? Back: Adjacency-matrix representations. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
When is a graph G = \langle V, E \rangle
considered dense?
Back: When \lvert E \rvert \approx \lvert V \rvert^2
.
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
Adjacency-List
Let G = \langle V, E \rangle
be a graph. An adjacency-list representation of G
has an array of size \lvert V \rvert
. Given v \in V
, the index corresponding to v
contains a linked list containing all adjacent vertices.
%%ANKI
Basic
Let G = \langle V, E \rangle
be a graph. It's adjacency-list representation is an array of what size?
Back: \lvert V \rvert
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic The following is an example of what kind of graph representation? ! Back: An adjacency-list representation. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic Are adjacency-list representations used for directed or undirected graphs? Back: Both. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Let G = \langle V, E \rangle
be a graph. What is the sum of its adjacency-list representation's list lengths?
Back: N/A. This depends on whether G
is a directed or undirected graph.
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Let G = \langle V, E \rangle
be a digraph. What is the sum of its adjacency-list representation's list lengths?
Back: \lvert E \rvert
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Let G = \langle V, E \rangle
be an undirected graph. What is the sum of its adjacency-list representation's list lengths?
Back: 2\lvert E \rvert
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic Which lemma explains the sum of an undirected graph adjacency-list representation's list lengths? Back: The handshake lemma. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Let G = \langle V, E \rangle
. What is the memory usage of its adjacency-list representation?
Back: \Theta(\lvert V \rvert + \lvert E \rvert)
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
Adjacency-Matrix
Let G = \langle V, E \rangle
be a graph. An adjacency-matrix representation of G
is a \lvert V \rvert \times \lvert V \rvert
matrix A = (a_{ij})
such that $a_{ij} = \begin{cases} 1 & \text{if } \langle i, j \rangle \in E \\ 0 & \text{otherwise} \end{cases}
$
%%ANKI
Basic
Let G = \langle V, E \rangle
be a graph. It's adjacency-matrix representation is a matrix of what dimensions?
Back: \lvert V \rvert \times \lvert V \rvert
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
What values are found in an adjacency-matrix representation of a graph?
Back: 0
and/or 1
.
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic The following is an example of what kind of graph representation? ! Back: An adjacency-matrix representation. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic Are adjacency-matrix representations used for directed or undirected graphs? Back: Both. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI Basic For what graphs are adjacency-matrix representations symmetric along its diagonal? Back: Undirected graphs. Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Why is the adjacency-matrix representation of undirected graph G = \langle V, E \rangle
symmetric along its diagonal?
Back: If \langle i, j \rangle \in E
then \langle j, i \rangle \in E
.
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
%%ANKI
Basic
Let G = \langle V, E \rangle
. What is the memory usage of its adjacency-matrix representation?
Back: \Theta(\lvert V \rvert^2)
Reference: Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).
END%%
Bibliography
- Thomas H. Cormen et al., Introduction to Algorithms, Fourth edition (Cambridge, Massachusett: The MIT Press, 2022).