1.算法基本要素

来源:互联网 发布:安卓源码之家 编辑:程序博客网 时间:2024/06/05 15:40

        算法:是指基于特定的计算模型,旨在解决某一信息处理问题而设计的一个指令序列。

        一般来说,算法应该具备下面5个要素:
        1.输入输出
        对所求解问题特定实例的这种描述统称为输入(input),即针对输入问题实例答案,称作输出(output)
        2.基本操作、确定性与可行性
        算法应该可描述为由若干明确语义的基本操作组成的指令序列,且每一操作在对应的计算模型中均可兑现。

        3.有穷性与正确性

        任意算法都应在执行有限次基本操作后终止并给出输出,此即所谓算法有穷性。算法不仅应该迟早会终止,而且所给的输出还应该能够符合由问题本身事先确定的条件,此即所谓算法的正确性。

        证明算法有穷性和正确性的一个重要技巧,就是从适当的角度审视整个计算过程,并找出其所具有的某种不变性和单调性。其中单调性是指,问题的有效规模会随着算法的推进不断递减。不变性则不仅应在算法初始状态下自然满足,而且应与最终的正确性相呼应——当问题的有效规模缩减到0时,不变性应随即等价于正确性。

        4.退化与鲁棒性

        同一问题往往不限于一种算法,而同一算法也常常会有多种实现方式

        5.重用性

        算法的总体框架是否能便捷地推广至其它场合。

原创粉丝点击