算法概念和描述
算法概念和描述
算法概念
在数学和计算机科学中,算法是指一个被定义好的、计算机可实施的有限步骤或次序,常用于计算、数据处理和自动推理。
通常用空间复杂度和时间复杂度来衡量一个算法的优劣,同一个问题可以用具有不同时间复杂度和空间复杂度的算法来求解。
算法的五个重要特征:
- 输入项:一个算法有 0 个或多个输入;
- 输出项:一个算法有 1 个或多个输出;
- 确定性:每一步执行都是严格的、清晰的、不存在二义性的定义;
- 有穷性:必须能在执行有限步之后终止;
- 可行性:每一条运算原则上都能精确的执行;
算法描述
1. 自然语言描述
使用日常的语言来描述解决问题的具体步骤。
- 优点:自然语言通俗易懂;
- 缺点:复杂的逻辑关系和流程会描述不清;
找出两个数中的最大数?
首先输入两个数a和b,判断a是否大于b,是大于则输出a,否则输出b。
2. 流程图描述
以特定的图形符号和说明来表示算法的图。
- 优点:用带箭头的线将各种图框连接起来,可以清晰地表示算法过程;
- 缺点:流程图有约定的符号规则,绘制过程比较繁琐;
3. 伪代码描述
介于自然语言和编程语言之间,以编程语言的书写形式描述算法功能。
- 优点:接近于自然语言通俗易懂,又使用编程语言的方式表达复杂逻辑关系和流程;
- 缺点:没有严格的语法限制,容易使用过于复杂的语言描述,应该尽量简洁,把意思表达清楚就可以了;
找出两个数中的最大数?
输入两个数a和b
如果(a>b)
输出a
否则
输出b