1
0
Fork 0
mirror of https://github.com/mfocko/blog.git synced 2025-05-07 20:02:58 +02:00

chore: switch to ‹ThemedSVG› where possible

Signed-off-by: Matej Focko <mfocko@redhat.com>
This commit is contained in:
Matej Focko 2023-07-20 20:30:38 +02:00
parent 568b9194d2
commit b841daccf7
Signed by: mfocko
GPG key ID: 7C47D46246790496
3 changed files with 32 additions and 10 deletions
ib002/10-graphs

View file

@ -7,6 +7,8 @@ tags:
- bfs
---
import ThemedSVG from "@site/src/components/ThemedSVG";
## Introduction
As we have talked on the seminar, if we construct from some vertex $u$ BFS tree on an undirected graph, we can obtain:
@ -18,11 +20,11 @@ As we have talked on the seminar, if we construct from some vertex $u$ BFS tree
Consider the following graph:
![BFS graph](/files/ib002/bfs-tree/bfs_graph_light.svg#gh-light-mode-only)![BFS graph](/files/ib002/bfs-tree/bfs_graph_dark.svg#gh-dark-mode-only)
<ThemedSVG source="/files/ib002/bfs-tree/bfs_graph" />
We run BFS from the vertex $a$ and obtain the following BFS tree:
![BFS tree](/files/ib002/bfs-tree/bfs_tree_light.svg#gh-light-mode-only)![BFS tree](/files/ib002/bfs-tree/bfs_tree_dark.svg#gh-dark-mode-only)
<ThemedSVG source="/files/ib002/bfs-tree/bfs_tree" />
Let's consider pair of vertices $e$ and $h$. For them we can safely lay, from the BFS tree, following properties:
@ -37,7 +39,7 @@ Let's keep the same graph, but break the lower bound, i.e. I have gotten a lower
Now the more important question, is there a shorter path in that graph? The answer is no, there's no shorter path than the one with length $2$. So what can we do about it? We'll add an edge to have a shorter path. Now we have gotten a lower bound of $2$, which means the only shorter path we can construct has $1$ edge and that is $e, h$ (no intermediary vertices). Let's do this!
![BFS tree](/files/ib002/bfs-tree/bfs_graph_with_additional_edge_light.svg#gh-light-mode-only)![BFS tree](/files/ib002/bfs-tree/bfs_graph_with_additional_edge_dark.svg#gh-dark-mode-only)
<ThemedSVG source="/files/ib002/bfs-tree/bfs_graph_with_additional_edge" />
Okay, so we have a graph that breaks the rule we have laid. However, we need to run BFS to obtain the new BFS tree, since we have changed the graph.
@ -49,7 +51,7 @@ Do we need to run BFS after **every** change?
:::
![BFS tree](/files/ib002/bfs-tree/bfs_tree_with_additional_edge_light.svg#gh-light-mode-only)![BFS tree](/files/ib002/bfs-tree/bfs_tree_with_additional_edge_dark.svg#gh-dark-mode-only)
<ThemedSVG source="/files/ib002/bfs-tree/bfs_tree_with_additional_edge" />
Oops, we have gotten a new BFS tree, that has a height difference of 1.