![算法:在一行中写出 if-then-return 或 else-return?](https://linux22.com/image/283060/%E7%AE%97%E6%B3%95%EF%BC%9A%E5%9C%A8%E4%B8%80%E8%A1%8C%E4%B8%AD%E5%86%99%E5%87%BA%20if-then-return%20%E6%88%96%20else-return%EF%BC%9F.png)
我可以使用包轻松生成以下算法语句algorithm2e
。从图中可以看出,return
即使语句很短,语句(也适用于其他语句)也会放在新行中。我该如何在一行中写入if-then-return
或?else-return
PS 生成上述代码如下:
... ...
\uIf{$\max_{\mathcal{AV}} > \theta_5$}
{
\Return the tracklet with $\max_{\mathcal{AV}}$.
}
\Else
{
\Return no speaker.
}
... ...
答案1
您可以使用\lIf
而不是\uIf
和\lElse
而不是\Else
。
平均能量损失
\documentclass{report}
\usepackage{algorithm2e}
\begin{document}
\begin{algorithm}
\lIf{$\max_{\mathcal{AV}} > \theta_5$}
{
\Return the tracklet with $\max_{\mathcal{AV}}$.
}
\lElse
{
\Return no speaker.
}
\end{algorithm}
\end{document}
输出
编辑
如果你不想在每行末尾打印分号,只需发出命令
\DontPrintSemicolon
平均能量损失
\documentclass{report}
\usepackage{algorithm2e}
\begin{document}
\begin{algorithm}
\DontPrintSemicolon
\lIf{$\max_{\mathcal{AV}} > \theta_5$}
{
\Return the tracklet with $\max_{\mathcal{AV}}$.
}
\lElse
{
\Return no speaker.
}
\end{algorithm}
\end{document}
输出