首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试算法的媒介?

尝试算法的媒介?
EN

Stack Overflow用户
提问于 2008-11-28 12:17:16
回答 7查看 281关注 0票数 2

根据定义,算法独立于它们运行的介质。例如,在用编程语言实现算法之前,我使用Excel表格处理数据结构,并做一些移动/洗牌/标记实验。

你使用什么工具和技术来设计和模拟算法的功能?如何使用绘图程序?一种特殊的规范语言?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2008-11-28 13:06:02

算法独立于语言,这是真的。但是你使用的任何媒介都是一种语言,句号。使用Excel意味着您正在使用excel“语言”(行、列、单元格等)。来表达你的一些算法。也许不是完整的成品,但您已经在Excel中表达了它。

UML图是一种表达算法的语言。纸上的草图是一种表达的语言。很难将柏拉图式的理想算法从所有的具体表示中分离出来。无论你做什么,你都是在用某种语言表达它。

诀窍是将算法与特定的语言功能和限制分开。

任何“非正式”符号都会帮助你做到这一点。英语(或其他自然语言),数学,图表等,都是用一种没有实现怪癖和问题的语言来表达算法的候选语言。

我首先用英语概述一下。纯文本,甚至不是MS-Word或格式化会让人分心的东西。

对于真正复杂的事情,一些补充数学有助于在程序状态周围放置正式断言。

此外,UML图也有帮助。我使用Argo UML --既便宜又有效。

有关此主题的更多信息,请阅读有关formal verification系统的信息。

票数 3
EN

Stack Overflow用户

发布于 2008-11-28 12:28:51

我通常在纸上画出来,然后尝试用Common Lisp快速实现,并在REPL上测试它。

票数 3
EN

Stack Overflow用户

发布于 2008-11-28 12:23:34

我不使用这样的工具,但在用Java实现算法之前,我通常会用groovy这样的高级脚本语言粗略地编写算法。

我发现使用更高级的脚本语言,你不必太担心语言,你可以更专注于算法。然后,当您验证了算法后,您可以将其移植到一种更具限制性的语言。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/325627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档