大话数据结构

来源:互联网 发布:传奇架设没有域名 编辑:程序博客网 时间:2024/05/15 01:54

一、定义

是相互之间存在一种或多种特定关系的数据元素的集合。
程序设计 = 数据结构 + 算法

1.1 数据

正所谓“巧妇难为无米之炊”,再强大的计算机,也要有“米”才可以下锅才可以干活的,否则就是一堆破铜烂铁,这个“米”就是数据。

数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。

数据不仅仅包括整型、实型等数值类型,还包括字符、声音、图像、视频等非数值类型。比如我们现在常用的搜索引擎,一般会有网页、MP3、图片、视频等分类。MP3就是声音数据,图片就是图像数据,网页其实指的就是全部数据的搜索,包括最重要的数字和字符等文字数据。

1.2 数据元素

数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。

比如,人类的数据元素是人,畜类的数据元素是牛、马、羊、鸡、猪等动物就是禽类的数据元素。

1.3 数据项

数据项:一个数据元素可以由若干个数据项组成。

比如人这样的数据元素,可以由眼、耳、鼻、嘴、手、脚这些数据项,也可以有姓名、年龄、性别、出生地址、联系电话等数据项,具体哪些数据项,要视你做的系统来决定。

数据项是数据不可分割的最小单位。数据项是数据的最小单位,但在真正讨论问题时,数据元素才是数据结构中建立数据模型的着眼点。就像我们讨论一步电影时,讨论的是电影角色这样的“数据元素”,而不是针对这个角色的姓名或者年龄这样的“数据项”去研究分析。

1.4 数据对象

数据对象:是性质相同的数据元素的集合,是数据的子集。

什么叫性质相同呢?是指数据元素具有相同的数量/类型的数据项,比如人都有姓名、生日、性别等相同的数据项,是数据的子集。

这里写图片描述

1.5 数据结构

在计算机中,数据元素并不是孤立的、杂乱无序的,而是具有内在联系的数据集合。数据元素之间存在一种或多种特定关系。数据结构:是香菇之间存在一种或多种特定关系的数据元素的集合。

为编写出一个好的程序,必须分析待处理对象的特性及各处理对象之间存在的关系。

按照视点的不同,将数据结构分为逻辑结构物理结构

1.6 逻辑结构

逻辑结构:是指数据对象中数据元素之间的相互关系。

逻辑结构分为以下四种:

1. 集合结构

集合结构:集合结构中的数据元素除了同属于一个集合外,它们之间没有其它关系。各个数据元素是“平等”的,它们的共同属性是“同属于一个集合”。数据结构中的集合关系就类似于数学中的集合(如下图1.6.1所示)。

2. 线性结构

线性结构:线性结构中的数据元素之间是一对一的关系(如下图1.6.2所示)

0 0
原创粉丝点击