需要帮助重新格式化包含乳胶代码的 PowerPoint 幻灯片

需要帮助重新格式化包含乳胶代码的 PowerPoint 幻灯片

请考虑以下 PowerPoint 幻灯片:

在此处输入图片描述

这是在鬣蜥特克斯插件,它允许您从乳胶片段生成图片,并将它们添加到您的 PowerPoint 幻灯片中。

上面实际上是由三幅图像组成:带有 INPUT 标题的图像:

\documentclass{article}
\usepackage{amsmath}
\usepackage[parfill]{parskip}
\pagestyle{empty}
\usepackage{xcolor}
\usepackage{color}
\definecolor{mywhite}{rgb}{1,1,1}
\color{mywhite}

\begin{document}

    \textsc{Input:} \hspace{15pt}     $n$ terminal nodes: $V_1,V_2,...,V_n$\\
    \hspace{50pt} and their corresponding weights: $w_1,w_2,...,w_n$

\end{document}

带有OUTPUT标题的那个:

\documentclass{article}
\usepackage{amsmath}
\usepackage[parfill]{parskip}
\pagestyle{empty}
\usepackage{xcolor}
\usepackage{color}
\definecolor{mywhite}{rgb}{1,1,1}
\color{mywhite}

\begin{document}

    \textsc{Output:} \hspace{3pt} Optimal extended binary tree\\
    \hspace{51pt} i.e. $T$ such that $\sum_{i=1}^nw_il_i$ is minimal

\end{document}

掌握算法的人:

\documentclass{article}
\usepackage{amsmath}
\usepackage[parfill]{parskip}
\pagestyle{empty}
\usepackage{xcolor}
\usepackage{color}
\definecolor{mywhite}{rgb}{1,1,1}
\color{mywhite}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{pifont}
\usepackage{geometry}
\geometry{textwidth=8.5cm}

\begin{document}
    \begin{algorithm}
        \caption{Huffman's Algorithm}
        \label{CHalgorithm}
        \begin{algorithmic}[1]
            \State Initialize minimum heap $Q$ with $w_1,w_2,...,w_n$
            \While {$Q.\text{size()}> 1$}
            \State $w_i\leftarrow Q.\text{extractMin()}$
            \State $w_j\leftarrow Q.\text{extractMin()}$
            \State $w_k\leftarrow w_i+w_j$
            \State Instantiate internal node $v_k$, with weight $w_k$
            \State Set $v_k$ as the father of $v_i$ and $v_j$
            \State $Q.\text{add}(w_k)$
            \EndWhile
        \end{algorithmic}
    \end{algorithm}
\end{document}

能够用代码片段制作图像真是太好了,因为这提供了自由移动文本块(图像)的灵活性;否则,通过对代码进行适当的调整和改进,创建一个代码片段就可以实现这一功能 - 而这些技能我并不具备。
但在这种情况下,上图中的格式对我来说看起来很糟糕,并且 INPUT 和 OUTPUT 代码片段写得非常糟糕(\hspace{}实现正确缩进的“解决方案”感觉不对,而且看起来很丑陋)。
这就是我需要帮助的地方。好吧,实际上不仅限于此。我需要以下主题方面的建议:

  1. 首先,也许是最简单的:参考算法的\caption{}标签。此标签将不需要的“算法 1”文本添加到我的标题中。标签\caption{}可以自定义吗?我如何删除此添加的文本并只留下“霍夫曼算法”?
  2. 有没有更好的方法来控制 INPUT 和 OUTPUT 片段的缩进?
  3. 事实上,我甚至更喜欢这种格式:

以下图片由 MS Paint 创作,我拍了上面的照片,并用切割工具移动东西)

在此处输入图片描述


我希望它将全部内容放在一个代码片段中,而不是将多幅图像拼凑在一起。

任何帮助将不胜感激。

答案1

我认为将“输入”、“输出”和“算法”组全部包含在一个 (LaTeX) 文档中不需要做太多额外工作。请注意使用两列tabularx环境来容纳“输入”和“输出”组。如果您不想为“算法”环境添加标题,请不要提供声明\caption

在此处输入图片描述

\documentclass{article}
\usepackage[textwidth=8.5cm]{geometry}

\usepackage{tabularx,ragged2e,amsmath,booktabs}
\newcolumntype{Y}{>{\RaggedRight\arraybackslash}X}

\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{parskip}

\begin{document}
\hrule%
Huffmann's Algorithm \strut
\hrule
\smallskip
\begin{tabularx}{\textwidth}{@{} lY @{}}
\textsc{Input:} &$n$ terminal nodes: $V_1,V_2,\dots,V_n$ and their corresponding weights: $w_1,w_2,\dots, w_n$ \\[0.75\baselineskip]
\textsc{Output:} & Optimal extended binary tree, i.e., $T$ such that $\sum_{i=1}^n w_il_i$ is minimal
\end{tabularx}

\begin{algorithm}
%\caption{Huffman's Algorithm}
%\label{CHalgorithm}
\begin{algorithmic}[1]
            \State Initialize minimum heap $Q$ with $w_1,w_2,\dots,w_n$
            \While {$Q.\text{size()}> 1$}
            \State $w_i\leftarrow Q.\text{extractMin()}$
            \State $w_j\leftarrow Q.\text{extractMin()}$
            \State $w_k\leftarrow w_i+w_j$
            \State Instantiate internal node $v_k$, with weight $w_k$
            \State Set $v_k$ as the father of $v_i$ and $v_j$
            \State $Q.\text{add}(w_k)$
            \EndWhile
\end{algorithmic}
\end{algorithm}
\end{document}

答案2

Atabular可能是最简单的解决方案,因为它只需要达到所需的宽度。我将列之间的默认间距设置为零,因此您必须在@{...}需要的地方添加间距。

\documentclass[border=1pt]{standalone}
\usepackage{amsmath}
\begin{document}
\tabcolsep=0pt
\begin{tabular}{l@{ }l}
\textsc{Input:} & $n$ terminal nodes: $V_1,V_2,...,V_n$ \\
  & and their corresponding weights: $w_1,w_2,...,w_n$ \\[20pt]
\textsc{Output:} & Optimal extended binary tree \\
  & i.e. $T$ such that $\sum_{i=1}^nw_il_i$ is minimal
\end{tabular}
\end{document}

独立表格

相关内容