算法基础
算法的概念
算法是为解决一个特定的问题而采取的方法和步骤。
利用计算机解决问题,就需要告诉计算机如何去计算的步骤。计算机做的所有事情都叫做计算。
例一:交换两个瓶子中的内容。
有两个瓶子a和b,分别盛放蓝墨水和黑墨水,如果要将两个瓶子里的水互换,应该怎么操作?
算法步骤描述:
1. 准备一个空容器c;
2. 把a中的墨水倒入c中;
3. 把b中的墨水倒入a中;
4. 把c中的墨水倒入b中;
例二:求正整数M,N的最大公约数
算法描述步骤:
以n除m的余数为r,r比小于n;
若r等于0,算法结束,输出结果为n。否则继续步骤;
若r不等于0,则使m等于n,n等于r,并返回步骤。继续进行;
算法的特征
有穷性:算法必须在执行有限个操作后终止;
确定性:算法中每一步的含义必须是确定的,不能出现二义性;
有效性:算法中每一步的操作必须能有效执行,一个不可执行的操作是无效的;
有零个或多个输入:执行算法时,从外界获得必要信息;
有一个或多个输出:算法的解就是输出。