数据结构是最基础的,是计算机科学中的基建概念。要想设计和开发高效的软件系统,具备良好的数据结构知识是必需的。在本文以及后续的系列文章中,我将重温数据结构这门课程。让我们开始吧。
我们一直在处理数据。我们如何存储数据、将数据整理和分组很重要。从我们的日常生活就可以举几个在特定结构中组织数据对我们很有帮助的例子。
我们能够用一种语言快速高效在字典里搜索某个单词词语,因为字典里的单词词语都是被排过序的,但是如果字典的单词词语没有被排序呢?从数百万个单词中查找某个单词这不可能,也太不切实际了。因此,字典是作为一种单词的排序列表被整理组织的。
我们可以在举另一种例子。
我们有城市地图之类的东西,比如像地标的位置、道路网的连接这类所有的数据都是以几何形式组织的,在二维平面上面,以几何形式展示这些地图数据。因此,地图数据需要结构化,这样,我们就能确定范围和方向,我们就能高效的寻找地标,获得从一个地方到另一个地方的路线。
再举一个例子,
对于像每日入账和账单记录的业务,组织和存储数据最合理的方法是以表格的形式。以表格形式能很容易的对数据进行聚合、展示视图。
因此,整理组织不同的数据需要不同的数据结构。
现在计算机可以处理各种数据,包括文字、图像、视频、关系数据、地理空间数据,几乎是我们在地球上所用到的所有种类的数据类型。我们如何在计算机中存储和组织数据数据非常重要。因为即使机器计算能力很强,能够处理非常非常大的数据。如果我们没有使用正确的数据结构,正确的逻辑结构,那么我们的软件系统也不会高效。
正式的数据结构定义应该是数据结构是一种在计算机上存储和组织数据,使数据可以得到有效利用的方式。