\documentclass{standalone} \usepackage[ngerman]{babel} \usepackage{amsmath} \usepackage[most]{tcolorbox} \usetikzlibrary{decorations.pathmorphing} \tikzset{decoration={random steps, segment length=5mm, amplitude=0.6pt}} \usepackage{xcolor} \newcommand{\revealtexton}[3]{#1} \newtcolorbox{pseudocode}{ coltitle=white, colbacktitle=gray!30!black, colframe=gray!30!black, enhanced, title=\bfseries {\large P}SEUDOCODE, attach boxed title to top right={yshift=-0.28cm, xshift=-5mm}, frame code={ \draw[decorate, draw=gray!30!black] (frame.north east) rectangle (frame.south west); }, } \newcommand\textvtt[1]{{\normalfont\fontfamily{cmvtt}\selectfont #1}} \usepackage{changepage} \begin{document} \begin{pseudocode} \textvtt{Weise allen Knoten die beiden Eigenschaften „Distanz“ und „Vorgänger“ zu.} \vspace{0.1cm} \textvtt{Initialisiere die Distanz des Startknoten mit \revealtexton{0}{1}{2} und die der anderen Knoten mit \revealtexton{$\infty$.}{2}{3}} \vspace{0.1cm} \textvtt{Füge den Startknoten der Warteschlange hinzu.} \vspace{0.1cm} \textvtt{Solange die Warteschlange nicht leer ist ...} \vspace{0.1cm} \begin{adjustwidth}{0.5cm}{} \textvtt{Nimm den Knoten mit \revealtexton{minimaler}{3}{4} (aufsummierter) Distanz aus der Warteschlange.} \vspace{0.1cm} \textvtt{Markiere diesen Knoten.} \vspace{0.1cm} \textvtt{Berechne für alle \revealtexton{unmarkierten}{4}{5} Nachbarn die Gesamtdistanz des Pfades zum Startknoten ($\text{Kantengewicht} + \text{Distanz des aktuellen Knotens}$) und füge sie der Warteschlange hinzu.} \vspace{0.1cm} \textvtt{Ist dieser Wert kleiner als die für diesen Nachbarn gespeicherte Distanz, aktualisiere sie und speichere den \revealtexton{aktuellen Knoten}{5}{6} als Vorgänger.} \end{adjustwidth} \end{pseudocode} \end{document}