问题如何排版数据结构?给出了如何使用包来设置简单数据结构的创建答案lstlistings
。特别是,我喜欢下面的样例(取自 Mico 的答案):
但是,我正在使用该algorithm2e
包来排版算法和伪代码。如何使用 来最好地排版像上面这样的简单数据结构algorithm2e
?
答案1
定义\Struct
一个与现有结构相匹配的algorithm2e
框架。在这种情况下,它类似于一个重复...直到,所以我会使用\SetKwRepeat{Struct}{struct \{}{\}}
:
\documentclass{article}
\usepackage[noline]{algorithm2e}
\SetKwRepeat{Struct}{struct \{}{\}}%
\newcommand{\Float}{\KwSty{float}}
\begin{document}
\begin{algorithm}[H]
\SetAlgoNoLine\PrintSemicolon
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e }
initialization\;
\Struct{Vec}{
\Float{} x,y,z\;
}
\While{not at end of this document}{
read current\;
\eIf{understand}{
go to next section\;
current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\caption{How to write algorithms}
\end{algorithm}
\end{document}
还可以进行许多其他调整(例如字体方面)。