Skip to content

Commit

Permalink
#225 migrate 6.2-1
Browse files Browse the repository at this point in the history
  • Loading branch information
wojtask committed Sep 22, 2024
1 parent b6be879 commit 1fb6398
Show file tree
Hide file tree
Showing 5 changed files with 90 additions and 1 deletion.
14 changes: 13 additions & 1 deletion chapter6/sections/2/1.tex
Original file line number Diff line number Diff line change
@@ -1 +1,13 @@
\workinprogress % TODO
See \refFigure{6.1-2}.
\begin{figure}[htb]
\captionsetup[subfigure]{}
\subcaptionbox{\label{fig:6.1-2a}}[0.5\textwidth]{\input{1a.tikz}}
\subcaptionbox{\label{fig:6.1-2b}}[0.5\textwidth]{\input{1b.tikz}}
\par\vspace{5mm}
\subcaptionbox{\label{fig:6.1-2c}}[0.5\textwidth]{\input{1c.tikz}}
\caption{The operation of $\proc{Max-Heapify}(A,3)$ on the array $A=\langle$27, 17, 3, 16, 13, 10, 1, 5, 7, 12, 4, 8, 9, 0$\rangle$, where $\attrib{A}{heap-size}=14$.\,
\textbf{(a)}\, The element $A[3]$ at node $i=3$ violates the max-heap property, since it is not larger than its left child $A[6]$.
\textbf{(b)}\, After exchanging $A[3]$ with $A[6]$ the max-heap property is restored for node 3, but is destroyed for node 6, because now $A[6]$ is not larger than both children.
In the recursive call $\proc{Max-Heapify}(A,6)$ the elements $A[6]$ and $A[13]$ are swapped, as shown in \textbf{(c)}.
The next recursive call $\proc{Max-Heapify}(A,13)$ just returns without making any further changes to the heap.} \label{fig:6.1-2}
\end{figure}
5 changes: 5 additions & 0 deletions chapter6/sections/2/1.tikz
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
\tikzset{
every node/.style = {tan vertex},
active/.style = {light blue vertex},
every label/.style = {index},
}
24 changes: 24 additions & 0 deletions chapter6/sections/2/1a.tikz
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
\input{1.tikz}
\begin{tikzpicture}
\node[label=1] {27}
child {node[label=2] {17}
child {node[label=4] {16}
child {node[label=8] {5}}
child {node[label=9] {7}}
}
child {node[label=5] {13}
child {node[label=10] {12}}
child {node[label=11] {4}}
}
}
child {node[active, label=3, label=right:{$i$}] {3}
child {node[label=6] {10}
child {node[label=12] {8}}
child {node[label=13] {9}}
}
child {node[label=7] {1}
child {node[label=14] {0}}
child {node[draw=none, fill=none] {} edge from parent[draw=none]}
}
};
\end{tikzpicture}
24 changes: 24 additions & 0 deletions chapter6/sections/2/1b.tikz
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
\input{1.tikz}
\begin{tikzpicture}
\node[label=1] {27}
child {node[label=2] {17}
child {node[label=4] {16}
child {node[label=8] {5}}
child {node[label=9] {7}}
}
child {node[label=5] {13}
child {node[label=10] {12}}
child {node[label=11] {4}}
}
}
child {node[label=3] {10}
child {node[active, label=6, label=right:{$i$}] {3}
child {node[label=12] {8}}
child {node[label=13] {9}}
}
child {node[label=7] {1}
child {node[label=14] {0}}
child {node[draw=none, fill=none] {} edge from parent[draw=none]}
}
};
\end{tikzpicture}
24 changes: 24 additions & 0 deletions chapter6/sections/2/1c.tikz
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
\input{1.tikz}
\begin{tikzpicture}
\node[label=1] {27}
child {node[label=2] {17}
child {node[label=4] {16}
child {node[label=8] {5}}
child {node[label=9] {7}}
}
child {node[label=5] {13}
child {node[label=10] {12}}
child {node[label=11] {4}}
}
}
child {node[label=3] {10}
child {node[label=6] {9}
child {node[label=12] {8}}
child {node[active, label=13, label=20:{$i$}] {3}}
}
child {node[label=7] {1}
child {node[label=14] {0}}
child {node[draw=none, fill=none] {} edge from parent[draw=none]}
}
};
\end{tikzpicture}

0 comments on commit 1fb6398

Please sign in to comment.