上QQ阅读APP看书,第一时间看更新
第1章 数据结构为何重要
哪怕只写过几行代码的人都会发现,编程基本上就是在跟数据打交道。计算机程序总是在接收数据、操作数据或返回数据。不管是求两数之和的小程序,还是管理公司的企业级软件,都运行在数据之上。
数据是一个广义的术语,可以指代各种类型的信息,包括最基本的数字和字符串。在经典的“Hello World! ”这个简单程序中,字符串"Hello World! "就是一条数据。事实上,无论是多么复杂的数据,我们都可以将其拆成一堆数字和字符串来看待。
数据结构则是指数据的组织形式。看看以下代码。
x="Hello! " y="How are you" z="today? " print x + y + z
这个非常简单的程序把3条数据串成了一句连贯的话。如果要描述该程序中的数据结构,我们会说,这里有3个独立的变量,分别引用着3个独立的字符串。
但在本书中你将会学到,数据结构不只是用于组织数据,它还极大地影响着代码的运行速度。因为数据结构不同,程序的运行速度可能相差多个数量级。如果你写的程序要处理大量的数据,或者要让数千人同时使用,那么你采用何种数据结构,将决定它是能够运行,还是会因为不堪重负而崩溃。
一旦对各种数据结构有了深刻的理解,并明白它们对程序性能方面的影响,你就能写出快速而优雅的代码,从而使软件运行得快速且流畅。当然,你的编程技能也会更上一层楼。
本章接下来将会分析两种数据结构:数组和集合。它们从表面上看好像差不多,但通过即将介绍的分析工具,你将会观察到它们在性能上的差异。