在Latex文档中插入算法模块

1.前言

作为一名计算机专业的学生,在写学术论文的时候,不可避免的需要在论文中书写相关的算法。如果自己一点点调格式,可能会比较麻烦,而且显得非常不专业。在Latex中用相关的算法包,可以格式化我们的算法模块。

2.几种常用的格式

方式1

\documentclass[utf-8]{ctexart}
\usepackage{ctex}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{multirow}
\usepackage{amsmath} 
\begin{document}
    \begin{algorithm}[htb] 
    \caption{ 写算法名称} 
    \label{alg:Framwork} 
    \begin{algorithmic}[1] %这个1 表示从第一行开始显示行号,不写就不会显示行号
    \REQUIRE ~~\\ %算法的输入参数:Input
    输入1 \\
    输入2 \\
    \ENSURE ~~\\ %算法的输出:Output
    \STATE 输入1
    \STATE 输入2
    \RETURN 返回值; %算法的返回值
    \end{algorithmic}
    \end{algorithm}
\end{document}

方式1效果

方式2

\documentclass[utf-8]{ctexart}
\usepackage{ctex}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{multirow}
\usepackage{amsmath} 
\begin{document}
\begin{algorithm}[h]
    \caption{常用的循环写法}
    \begin{algorithmic}[1]
    \STATE $//$ for each
    \FOR{each $i \in [1,9]$}
    \STATE initialize a tree $T_{i}$ with only a leaf (the root);\
    \STATE $T=T \cup T_{i};$\
    \ENDFOR

    \STATE $//$ for all
    \FORALL {$c$ such that $c \in RecentMBatch(E_{n-1})$} 
    \label{code:TrainBase:getc}
    \STATE $T=T \cup PosSample(c)$; 
    \label{code:TrainBase:pos}
    \ENDFOR

    \STATE $//$传统for循环
    \FOR{$i=1$; $i
方式2效果

方式3

\documentclass[utf-8]{ctexart}
\usepackage{ctex}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{multirow}
\usepackage{amsmath} 
\begin{document}
\begin{algorithm}[h]
    \caption{if-else语句的书写}
    \begin{algorithmic}[1]
    \FOR {$i=1;i<10;i++$}
        \IF {$i\%3==0 $}
            \STATE cout<
方式3效果

你可能感兴趣的:(在Latex文档中插入算法模块)