首 页IT知识库翔宇问吧收藏本站
当前位置:翔宇亭IT乐园IT知识库编程技术C/C++

程序的算法

减小字体 增大字体 作者:biye5u.com  来源:本站原创  发布时间:2011-05-02 06:50:21

我们在解决一个特定问题时,除了要设计合理的数据结构外,还要设计性能较优的算法。

算法是指为解决特定问题而采取的确定且有限的步骤。一个算法应当具有以下几个特性:

(1)有穷性:一个算法包含的操作步骤应该是有限的。也就是说在执行若干操作步骤后,算法将结束,而且每一步都在合理的时间内完成。

(2)确定性。算法中每一条指令必须有确切的含义,不能有二义性,对于相同的输入必须得出相同的执行结果。

(3)可行性。算法中指定的操作,都可以通过已经验证过可以实现的基本运算执行有限次后实现。

(4)有零个或多个输入。在计算机上实现的算法是用来处理数据对象的,在大多数情况下这些数据对象需要通过输入来得到。

(5)有一个或多个输出。算法的目的是为了求“解”,这些“解”只有通过输出才能得到。

算法可以用各种描述方法来进行描述,最常用的是伪代码和流程图。

伪代码是一种近似于高级语言但又不受语法约束的一种语言描述方式,这在英语国家中使用起来较为方便。

流程图也是描述算法的很好的工具,一般的流程图由下面的几种图形组成:

程序流程图所用的几种基本图形

由于这些基本图形表示的算法形象直观,简单简便。但这种流程图对于流程线没有限制,可以任意转向,在描述复杂的算法时所占篇幅较多,费时费力,不易阅读。

1973年,美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式,这种流程图完全去掉了流程线,算法的每一步都用一个矩形框来描述,把一个个矩形框按执行的次序连接起来就是一个完整的算法描述。这种流程图用两位学者名字的第一个英文字母命名,称为N-S流程图。

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 1分

内 容:

            请注意用语文明且合法,不要发布带有攻击性、侮辱性的言论,谢谢合作!

         通知管理员 验证码:

关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图 | 用户守则 | 联系我们 |
本站大多数内容来自互联网或网站会员发布,如有侵权,请来信告之,谢谢!
Copyright © 2007-2017 biye5u.com. All Rights Reserved.
网站备案号:黑ICP备13005378号-3