谈谈算法

算法

解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示为一个或多个操作

eg: 泡妞的技巧和方式

算法具有5个基本特征:

  • 输入:具有零个或多个输入
  • 输出:至少有一个或多个输出
  • 有穷性:指在执行有限的步骤
  • 确定性:
    • 每一个步骤都具有确定的含义,不会出现二义性
    • 在一定条件下,只有一个执行路径,相同的输入只能有唯一的输出结构
    • 每个步骤都应该被精确定义而无歧义
  • 可行性
    • 算法的每一步都必须是可行性,也是每一步都能勾通过执行有限次数完成

算法设计的要求

  • 正确性

    • 至少有输入、输出和加工处理无歧义,能够正确反应问题的需求、能够得到问题的正确答案
    • 四个层次:
      • 有语法错误
      • 对于合法输入能够产生满足要求的输出
      • 对非法输入能够产生满足规格的说明
      • 对故意刁难的测试输入都有满足要求的输出结果
  • 可读性

    • 算法目的便与阅读、理解和交流
    • 一方面让计算机执行、一方面方便他人阅读和自己日后阅读修改
  • 健壮性

    • 当输入数据不合法时,算法也能做出相关处理,而不是产生异常、崩溃和莫名其妙的结果
  • 时间效率高和存储量低

原文地址:https://www.cnblogs.com/smallyi/p/14365245.html