1樓:
排這類演算法主要有如下工具,這些包名字很多都很接近,講起來有些拗口:clrscode 包
clrscode3e 包
algorithms 包(實際使用兩個子包 \usepackage、\usepackage)
algorithm2e 包
algorithmicx 包(實際使用其中的子包 \usepackage,可與 algorithms 的 algorithm.sty 混用)
其他比較少用到的包(其實就是比較難用的)還有 alg、newalg、program、pseudocode 等。
此外可以用 tabbing 環境手工做,也有人用 listings 包弄的。Ch'enMeng 給過乙個 algorithms 的例子了,其他包的例子相應手冊裡都有。
要理解原理可以自己學習 tabbing 環境的用法,或讀 clrscode 包的實現(推薦它因為功能最少最簡單)。沒有特殊需要不要自己嘗試再造輪子了,一般人造的輪子也不圓,大致就這樣。
2樓:張真實
第一種方案,建議用公式環境,比如align,用&來使各個行在不同位置對齊。
第二種方案,用\quad。空兩格用\qquad。以此類推。
不過,你這個排版需求大概是從word時代過來的,不建議。
3樓:
排版演算法請用相應的巨集包,不要自己折騰。
下面是使用 algorithms bundle 的例子(使用 algorithm 和 algorithmic 巨集包)。
劉海洋 前輩的答案中給了常用的用於排版演算法的巨集包。
其中 clrscode 巨集包是《演算法導論》一書的作者在排版《演算法導論》時使用的巨集包,它最簡單最方便,同時效果也因為《演算法導論》一書的普遍使用而為人接受。推薦使用。
\documentclass
\usepackage
\usepackage
\begin
\begin
\caption
\label
\begin
\REQUIRE$n
\geq
0\vee
x \neq0$
\ENSURE$y
=x^n
$\STATE$y
\gets1$
\IF\STATE$X
\gets1/
x$\STATE$N
\gets-n
$\ELSE
\STATE$X
\getsx$
\STATE$N
\getsn$
\ENDIF
\WHILE
\IF\STATE$X
\gets
X \timesX$
\STATE$N
\getsN /
2$\ELSE
[$N$ is odd]
\STATE$y
\gets
y \timesX$
\STATE$N
\getsN -
1$\ENDIF
\ENDWHILE
\end
\end
\end
什麼是可持續發展?可持續發展和環境保護的關係是什麼?
高翔宇 可持續發展的定義是指在保護環境的條件下,既滿足當代人的需求又不損害後代人的需求為前瞻的發展模式。可持續發展不能等同於生態保護或環境保護。它由三要素組成,分別為環境 社會和經濟。具體見下圖。所以環境保護只是實現可持續發展的乙個環節。 趙希 在分析 環境保護 這一概念之前,請題主先想一想,你腦海...
聯合國17個可持續發展,目標。?
逆風 目標1.在全世界消除一切形式的貧困目標 2.消除飢餓,實現糧食安全,改善營養狀況和促進可持續農業目標 3.確保健康的生活方式,促進各年齡段人群的福祉目標 4.確保包容和公平的優質教育,讓全民終身享有學習機會目標 5.實現性別平等,增強所有婦女和女童的權能目標 6.為所有人提供水和環境衛生並對其...
可持續發展的基本條件是什麼?
搶灘鹹魚 科學發展觀,第一要義是發展,核心立場是以人為本,基本要求是全面協調可持續,根本方法是統籌兼顧。科學發展觀的精神實質是解放思想,實事求是 與時俱進 求真務實。必須堅持把發展作為黨執政興國的第一要義 想要抓住經濟建設這個中心,一定要聚精會神搞建設,一心一意謀發展。堅持以人為本 把廣大人民的根本...