算法是解决一个问题所采取的方法和步骤。程序设计中的算法是把解决问题的每一步骤具体化为计算机的动作。即算法是解决计算机在什么情况下应该“做什么”和“怎样做”的问题。
计算机算法可分为两大类:数值运算算法和非数值运算算法。数值运算的目的是求数值解,例如求方程的根、求一个函数的定积分都属于数值运算的范围。非数值运算包括的面十分广泛,最常见的是用于事务管理领域,如人事管理、物资管理、图书信息检索等。
目前,计算机在非数值处理方面的应用远远超过了在数值运算方面的应用。由于数值运算有现成的模型,可以运用数值分析方法,对常见的各种数值运算问题都有比较成熟的算法可供选用或参考使用;而非数值处理的种类繁多,要求各异,难以规范化,对于大多数非数值处理问题的算法需要设计人员在参考已有的类似算法的基础上,自行设计。
算法设计没有固定的模式。对于同一个问题可有多种算法,不同的设计者也可以设计出不同的算法。算法要采用一定的形式表示出来,其目的是便于用一种计算机编程语言把算法变换成能在计算机上实现的程序。软件行业把软件开发分为设计和编码两个不同的阶段。所谓设计就是算法的设计,而算法的设计就是算法的分析与表示,且分析和表示往往是融合渗透在一个过程当中。
留言与评论(共有 0 条评论) |