我需要将一些python和java例程转换成伪代码作为我的硕士论文,但是很难想出一种语法/样式,即:
你怎么写伪代码?有什么标准建议吗?
发布于 2010-02-20 10:03:51
我建议阅读“算法入门”一书(由Cormen,Leiserson和Rivest撰写)。我一直认为它对算法的伪代码描述非常清晰和一致。
举个例子:
DIJKSTRA(G, w, s)
1 INITIALIZE-SINGLE-SOURCE(G, s)
2 S ← Ø
3 Q ← V[G]
4 while Q ≠ Ø
5 do u ← EXTRACT-MIN(Q)
6 S ← S ∪{u}
7 for each vertex v ∈ Adj[u]
8 do RELAX(u, v, w)发布于 2010-02-25 14:08:06
在回答我自己的问题时,我只想提请大家注意TeX FAQ条目在LaTeX中排版伪码。它描述了许多不同的风格,列出了优点和缺点。顺便说一句,正如上面所建议的,有两个样式表用于以Cormen在"Introductin to Algorithms“中使用的方式编写伪代码:newalg和clrscode。后者是科门自己写的。
发布于 2010-02-20 14:33:29
我建议你看看堡垒编程语言。
这是一种实际的编程语言,而不是伪代码,但它的设计目的是尽可能接近可执行伪代码。特别是,为了设计语法,他们阅读并分析了数以百计的CS和数学论文、课程、书籍和期刊,以找到伪代码和其他计算/数学符号的通用用法模式。
您可以通过查看堡垒源代码并抽象出您不需要的东西来利用所有这些研究,因为您的目标受众是人,而堡垒是一个编译器。
下面是从NAS (NASA高级超级计算)共轭梯度并行基准运行堡垒代码的实际示例。为了获得有趣的体验,请将基准测试的规范与堡垒中的实现进行比较,并注意如何实现1:1的通信。还比较几种其他语言(如C或Fortran )中的实现,并注意它们与规范完全无关(而且通常也比规范长一个数量级)。
我必须强调:这不是伪代码,这是实际的工作堡垒代码!来自https://umbilicus.wordpress.com/2009/10/16/fortress-parallel-by-default/

注意,堡垒是用ASCII字符编写的;特殊字符是用格式化程序呈现的。
https://stackoverflow.com/questions/2301756
复制相似问题