现实生活和代码中的算法
算法使用一系列步骤来确定结果。步骤可以是一组指示、比较,甚至是数学公式。
你的日常生活中充满了你不经意间使用的算法。它们帮助你做决定、创造事物和解决问题。
现实生活中的例子:
- 检查你是否有足够的钱去买零食。
- 早上穿衣服。
- 画简笔画。
编程示例:
- 检查技能等级是否足够使用某个物品。
- 将一系列项目按字母顺序排序。
- 一名站在熔岩上的玩家每秒失去5点生命值。如果他们的生命值降到0,他们会重生。
在代码中创建算法
在现实生活中,我们通常不会考虑我们每天使用的算法。然而,计算机需要逐步编码算法,并使用三种方法之一来解决问题或产生结果。
方法论 | 示例 |
---|---|
选择 - 使用条件语句,例如if/then来确定输出。 |
|
排序 - 一组精确的步骤。 |
|
迭代 - 根据需要重复代码的某些部分,例如在for循环或乘法中。 |
|
结合算法
就像更大的问题可以分解成更小的问题一样,一些算法可以被分解成一系列更小的算法。

想想你早上穿衣服的算法。如果这是你的主要算法,它可能使用一个算法来挑选衣服,第二个算法来穿上衣服。
穿衣服的伪代码
-- 第一个挑选衣服的算法
local function pickClothes()
pick top clothing
pick bottom clothing
pick Socks
pick Shoes
end
-- 第二个穿上衣服的算法
local function putOnClothes()
put on top clothing
put on bottom clothing
put on socks
put on shoes
end
-- 主算法,调用pickClothes()和putOnClothes()
local function getDressed()
pickClothes()
putOnClothes()
end
总结
算法是预定义的步骤,用于提供结果。在日常生活中,算法解决的问题包括穿衣、上班或做蛋糕。在代码中,算法解决的问题包括管理网站、处理交通拥堵或运行游戏机制。为了完成它们的目标,算法通常会调用其他算法。
算法使用三种不同的方法来得出结论;选择、迭代和排序。选择使用条件语句,例如if/then语句。迭代根据需要重复代码的某些部分。排序使用一系列步骤来产生结果。