上QQ阅读APP看书,第一时间看更新
第1章 数据结构为何重要
在学习写代码时,人们会关注,而且也应该关注,代码能否正常运行。对他们来说,评价代码的标准很简单:它能正常工作吗?
随着软件工程师不断积累经验,他们开始意识到代码质量的奥妙。他们发现,两段功能相同的代码也存在优劣之分。
衡量代码质量有众多标准,其中一个重要的标准就是代码的可维护性。代码的可维护性体现在可读性、结构、模块化程度等方面。
不过,高质量代码还有另一个特征,那就是代码的效率。举例来说,你可以找两段功能相同的代码,但其中一段比另一段运行起来会更快。
观察以下两个打印从2到100的偶数的函数。
def print_numbers_version_one():
number = 2
while number <= 100:
# 如果number是偶数,就把它打印出来:
if number % 2 == 0:
print(number)
number += 1
def print_numbers_version_two():
number = 2
while number <= 100:
print(number)
# 根据偶数的定义,给number加上2,就能得到下一个偶数:
number += 2
你觉得这两个函数哪一个运行得更快呢?
正确答案是第二个。这是因为第一个要循环100次,而第二个只要循环50次。也就是说,第一个函数执行的步骤数是第二个的两倍。
本书旨在教你写出高效的代码。能写出运行速度快的代码是提高软件开发能力的重要指标。
写出快速的代码的第一步,就是要理解数据结构,以及不同的数据结构对代码速度的影响。下面让我们开始学习吧。