Когда я нахожусь в среде multicol, мои алгоритмы не отображаются. Страница просто пустая. Полный код TeX доступен здесь:
\documentclass[12pt,landscape]{article}
\usepackage{multicol}
\usepackage{calc}
\usepackage[landscape]{geometry}
\usepackage{graphicx}
\usepackage{latexsym, marvosym}
\usepackage{pifont}
\usepackage{lscape}
\usepackage{graphicx}
\usepackage{array}
\usepackage{booktabs,dirtytalk}
\usepackage[bottom]{footmisc}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usepackage{color,soul}
\usepackage{mathptm}
\usepackage[boxruled, linesnumbered]{algorithm2e}
\usepackage{algorithmic}
\usepackage{amsmath, amssymb, amsthm}
\usepackage{epsf}
\setcounter{secnumdepth}{0}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt plus 0.5ex}
\usepackage{titlesec}
\begin{document}
\raggedright
\footnotesize
\begin{multicols*}{3}
\setlength{\premulticols}{1pt}
\setlength{\postmulticols}{1pt}
\setlength{\multicolsep}{1pt}
\setlength{\columnsep}{2pt}
\scriptsize
\section{Sorting}
\begin{algorithm}
\caption{InsertionSort}
\begin{algorithmic}
\STATE Input: A
\FOR{$i = 0$ to $n - 2$}
\STATE{$j = i$}
\WHILE{$j \ge 0$ and $A[j + 1] < A[j]$}
\STATE{swap $A[j]$ and $A[j + 1]$}
\STATE{j = j - 1}
\ENDWHILE
\ENDFOR
\end{algorithmic}
\end{algorithm}
\end{multicols*}
\end{document}
Хотелось бы получить помощь в том, как заставить мой алгоритм работать, спасибо!
решение1
Вам следует рассмотреть возможность просмотра, .log
когда происходят странные вещи. В этом случае вы бы увидели следующее, сообщенное (La)TeX:
Предупреждение о пакете multicol: плавающие элементы и поля marginpars не допускаются внутри среды `multicols'!.
Чтобы избежать этого, плавающие элементы не должны плавать внутри multicols
, что доступно через [H]
опцию ERE (предоставленнуюfloats
или algorithm
окружающая среда отalgorithm2e
).
\documentclass{article}
\usepackage{multicol}
\usepackage[landscape]{geometry}
\usepackage{algorithm,algorithmic}
\begin{document}
\begin{multicols*}{2}
\section{Sorting}
\begin{algorithm}[H]
\caption{InsertionSort}
\begin{algorithmic}
\STATE Input: A
\FOR{$i = 0$ to $n - 2$}
\STATE{$j = i$}
\WHILE{$j \ge 0$ and $A[j + 1] < A[j]$}
\STATE{swap $A[j]$ and $A[j + 1]$}
\STATE{j = j - 1}
\ENDWHILE
\ENDFOR
\end{algorithmic}
\end{algorithm}
\end{multicols*}
\end{document}