算法:从古老智慧到现代科技的驱动力
1. 算法的基本概念
在我们的日常生活中,算法无处不在,只是我们常常没有意识到。比如在学校操场上,和好朋友分享一包糖果时,“你一个,我一个”的方式其实就是在执行一个算法。算法是一系列为解决信息问题而执行的步骤,就像分享糖果的例子,输入是糖果的数量,输出是你和朋友各自得到的糖果数。如果糖果总数是偶数,两人得到的糖果数相同;如果是奇数,朋友会比你多一个。
算法类似于食谱,是一系列简单步骤的列表,遵循这些步骤可以将一组输入转化为所需的输出。不同的是,算法处理信息,而食谱用于准备食物。通常,算法操作代表信息的物理量。而且,对于一个给定的问题,往往存在多种算法。以分享糖果为例,你也可以先数出糖果总数,在心里除以二,然后交出正确数量的糖果,虽然结果相同,但算法(即获得输出的方式)不同。
算法通常以指令列表的形式记录下来,这些指令大多按顺序依次执行,但有时下一个要执行的指令并非列表中的下一个顺序步骤,而是列表中其他位置的指令。例如,某个步骤可能要求执行算法的人回到前面的步骤并从那里继续,这种向后跳转实现了步骤组的重复,这是许多算法中的强大特性,这种重复步骤的行为被称为迭代。
1.1 糖果分享算法示例
如果糖果数量是偶数,以下迭代算法就足够了:
Repeat the following steps:
Give one sweet to your friend.
Give one sweet to yourself.
Stop repeating when the packet is empty.
超级会员免费看
订阅专栏 解锁全文
986

被折叠的 条评论
为什么被折叠?



