Basics - 数据结构概念

前言

数据结构是计算机存储、组织数据的方式,数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。

数据结构(data structure)是带有结构特性的数据元素的集合,它研究的是数据的逻辑结构和数据的物理结构以及它们之间的相互关系,并对这种结构定义相适应的运算,设计出相应的算法,并确保经过这些运算以后所得到的新结构仍保持原来的结构类型。

数据结构的研究内容是构造复杂软件系统的基础,它的核心技术是分解与抽象。通过分解可以划分出数据的3个层次;再通过抽象,舍弃数据元素的具体内容,就得到逻辑结构。类似地,通过分解将处理要求划分成各种功能,再通过抽象舍弃实现细节,就得到运算的定义。上述两个方面的结合可以将问题变换为数据结构。这是一个从具体(即具体问题)到抽象(即数据结构)的过程。然后,通过增加对实现细节的考虑进一步得到存储结构和实现运算,从而完成设计任务。这是一个从抽象(即数据结构)到具体(即具体实现)的过程。

具体体现

数据存储只有一个目的,便是为了方便后期对数据的再利用,你可以理解为复用概念,虽然不严谨。

例如,我们存储了一些数据:

char Data[5] = {'小明','小红','小李','小张','小王'}

这些数据你一定会在你的程序中用,否则无缘无故开辟空间存储这些数据都是对空间的不负责。

因此,数据在计算机存储空间的存放,决不是胡乱的,这就要求我们选择一种好的方式来存储数据,而这也是数据结构的核心内容。

如果要存储一组带有关系(relationship)的数据,各个数据之间都有彼此的联系。例如:张亮是张平、张华和张群的父亲,同时张平还是张晶和张磊的父亲。 关系图如下:
Basics - 数据结构概念_第1张图片
对于存储之间具有复杂关系的数据,如果还是用变量或数组来存储的话,其中数据的存储是没有问题的,但是数据关系是有问题的,因为无法体现数据之间的逻辑关系(不清楚谁是谁的父亲或儿子)。然而这样的数据,后期是无法使用的,所以这中数据结构显示不明智。

结尾

通过以上两个示例可以体会出,数据结构教会我们的绝不仅仅是如何存储 1、2、{a,b,c} 这样简单的数据,而是解决具有复杂关系的大量数据的存储问题。

数据结构是一门学科,它教会我们“如何存储具有复杂关系的数据更有助于后期对数据的再利用”。

导航无疑是出游旅行的必备神器,无论是哪款导航软件,其导航功能的实现都需要大量地图数据的支持。很明显,这些数据绝不是使用变量或数组进行存储的,那样对于数据的使用简直是个悲剧。

你可能感兴趣的:(+,Basics)