使用\usepackage[noend]{algpseudocode} 代替\usepackage{algpseudocode} 。
如果在编写的时候觉得每次都需要加endif和endfor很麻烦,则可以参考以下的代码:
\documentclass[a4paper]{article}
\usepackage{algorithmicx}
\usepackage{algorithm}
\usepackage{algpseudocode}
\newcommand*{\Let}[2]{\State #1 $\gets$ \parbox[t]{\linegoal}{#2\strut}}
\algnewcommand\algorithmicinput{\textbf{INPUT: }}
\algnewcommand\Input{\item[\algorithmicinput]}
\algnewcommand\algorithmicoutput{\textbf{OUTPUT: }}
\algnewcommand\Output{\item[\algorithmicoutput]}
\begin{document}
\newcommand\sForAll[2]{ \ForAll{#1}#2\EndFor} % snappy version of \ForAll...\EndFor
\newcommand\sIf[2]{ \If{#1}#2\EndIf} % snappy version of \If...\EndIf
\begin{algorithm}
\begin{algorithmic}[1]
\Procedure{A}{}
\sForAll{$a\in A$}{
\sIf{$a\geq b$}{
\State\Return $a$
}
}
\EndProcedure
\end{algorithmic}
\end{algorithm}
\end{document}
原文地址:https://tex.stackexchange.com/questions/145760/how-may-i-remove-endif-and-endfor-in-algorithmicx