第22章 算法
“算法,就像一张菜谱。”
——瓦辛·拉提夫(Waseem Latif)
本章将简要介绍算法。算法(algorithm)是解决问题的一系列步骤。问题的类型多种多样,从列表检索到打印歌词都可以用算法解决。
22.1 FizzBuzz
本节中,我们来学习如何应对面试中经常会问到的问题——FizzBuzz。
编写一个程序,打印从1到100之间的数字。碰到3的倍数时,不打印数字,而是打印"Fizz";碰到5的倍数时,则打印"Buzz";如果是3和5共同的倍数,则打印"FizzBuzz"。
为了解决该问题,我们需要检查某个数字是否是3、5或二者共同的倍数。如果数字是3的倍数,那么将其除以3,不会有余数。5的倍数也适用该原则。取模运算符%的返回结果为余数。遍历1到100之间的数字,并检查每个数字是否能被3、5整除,或者能否被两个数字同时整除:
01 # http://tinyurl.com/jroprmn
02
03
04 def fizz_buzz():
05 for i in range(1, 101):
06 if i % 3 == 0
本章介绍了Python编程中的算法基础知识,包括FizzBuzz问题、顺序搜索、回文词检查、变位词判断、计算字母频数和递归概念。通过实例详细讲解了如何运用这些算法解决问题,并提供了挑战练习,帮助读者巩固学习。
订阅专栏 解锁全文
146

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



