为什么algorithm2e
变量anychange
和done
斜体排版,我该如何关闭它?如何删除 -clause 后面的done
分号until
?
$\textsf{anychange} \gets \textsf{false}$ \\
\Repeat{$\textsf{done}$}{
$\textsf{done} \gets \textsf{true}$ \\
\ParallelFor{$u \in V$} {
$\delta \gets \max_{v \in N(u)} \left \{ \Delta mod(v, \zeta(u) \rightarrow \zeta(v)) \right \} $\\
$C \gets \zeta(\arg\max_{v \in N(u)} \left \{ \Delta mod(v, \zeta(u) \rightarrow \zeta(v)) \right \} ) $\\
\If{$\delta > 0$}{
$\zeta(u) \leftarrow C$ \\
$\textsf{done} \gets \textsf{false}$ \\
$\textsf{anychange} \gets \textsf{true}$ \\
}
}
}
\If{$\textsf{anychange}$}{
$G' \leftarrow$ \textsf{contract}$(G, \zeta)$ \\
$\zeta \gets$ \textsf{prolong(PLM$(G')$)} \\
}
答案1
algorithm2e
避免在语句末尾\DontPrintSemicolon
打印;
。结构的条件参数设置在斜体。您可以根据需要使用以下方法覆盖此设置\upshape
:
\documentclass{article}
\usepackage{algorithm2e}% http://ctan.org/pkg/algorithm2e
\begin{document}
\begin{algorithm}
\DontPrintSemicolon
$\textsf{anychange} \gets \textsf{false}$ \\
\Repeat{$\textsf{\upshape done}$}{
$\textsf{done} \gets \textsf{true}$ \\
\For{$u \in V$} {
$\delta \gets \max_{v \in N(u)} \left \{ \Delta mod(v, \zeta(u) \rightarrow \zeta(v)) \right \} $\\
$C \gets \zeta(\arg\max_{v \in N(u)} \left \{ \Delta mod(v, \zeta(u) \rightarrow \zeta(v)) \right \} ) $\\
\If{$\delta > 0$}{
$\zeta(u) \leftarrow C$ \\
$\textsf{done} \gets \textsf{false}$ \\
$\textsf{anychange} \gets \textsf{true}$ \\
}
}
}
\If{$\textsf{\upshape anychange}$}{
$G' \leftarrow$ \textsf{contract}$(G, \zeta)$ \\
$\zeta \gets$ \textsf{prolong(PLM$(G')$)} \\
}
\end{algorithm}
\end{document}