두 개의 알고리즘을 하나의 부동소수점으로 결합

두 개의 알고리즘을 하나의 부동소수점으로 결합

다음 MWE를 고려하십시오.

\documentclass[twocolumn]{article}

\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}

\begin{document}
\begin{figure}[t]
    \noindent\begin{minipage}{\columnwidth}
        \begin{algorithm}[H]
            \begin{algorithmic}[1]
                \Function{Foo}{parameters}
                \State{Do something}
                \State{\Return result}
                \EndFunction
            \end{algorithmic}
            \caption{Algorithm 1}
        \end{algorithm}
    \end{minipage}
    \noindent\begin{minipage}{\columnwidth}
        \begin{algorithm}[H]
            \begin{algorithmic}[1]
                \Function{Foo}{parameters}
                \State{Do something}
                \State{\Return result}
                \EndFunction
            \end{algorithmic}
            \caption{Algorithm 2}
        \end{algorithm}
    \end{minipage}
\end{figure}

Some text.
Then comes the next algorithm.
\pagebreak
\begin{algorithm}[t]
    \begin{algorithmic}[1]
        \Function{Foo}{parameters}
        \State{Do something}
        \State{\Return result}
        \EndFunction
    \end{algorithmic}
    \caption{Algorithm 3}
\end{algorithm}

And again some text.

\end{document}

하나의 부동 객체에 두 개(또는 그 이상)의 알고리즘을 결합하고 싶습니다. 내가 찾은 유일한 해결책은 두 개의 미니페이지를 사용하고 그 안에 새로운 알고리즘 환경을 추가하는 것입니다. 솔루션의 문제점은 알고리즘 위에 공간을 추가한다는 것입니다. 이는 문서를 컴파일할 때 명확하게 표시됩니다. 왼쪽 열에는 결합된 알고리즘 위에 약간의 공간이 있습니다. 오른쪽 열의 단일 알고리즘이 올바르게 표시됩니까?

추가 공간을 어떻게 제거할 수 있습니까? 아니면 두 알고리즘을 하나의 부동소수점으로 결합하는 더 나은 솔루션이 있습니까?

답변1

제거하는 부분이 있습니다 \baselineskip.

\documentclass[twocolumn]{article}

\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}

\begin{document}

\begin{figure}[tp]
\vspace*{-\baselineskip}

\begin{minipage}{\columnwidth}
\begin{algorithm}[H]
  \begin{algorithmic}[1]
    \Function{Foo}{parameters}
    \State{Do something}
    \State{\Return result}
    \EndFunction
  \end{algorithmic}
\caption{Algorithm 1}
\end{algorithm}
\end{minipage}

\begin{minipage}{\columnwidth}
\begin{algorithm}[H]
  \begin{algorithmic}[1]
    \Function{Foo}{parameters}
    \State{Do something}
    \State{\Return result}
    \EndFunction
  \end{algorithmic}
\caption{Algorithm 2}
\end{algorithm}
\end{minipage}

\end{figure}

Some text.
Then comes the next algorithm.

\vfill
\pagebreak

\begin{algorithm}[tp]
\begin{algorithmic}[1]
  \Function{Foo}{parameters}
  \State{Do something}
  \State{\Return result}
  \EndFunction
\end{algorithmic}
\caption{Algorithm 3}
\end{algorithm}

And again some text.

\end{document}

여기에 이미지 설명을 입력하세요

\noindent내부에서 들여쓰기가 0으로 설정되어 있으므로 필요하지 않습니다 figure.

관련 정보