计算机程序是由算法和数据结构组成,一个完整的程序由什么组成?让我们先了解一下数据结构...

在前面的文章中提到过,一个完整的程序包含了算法和数据结构。我们通俗的说所谓的算法就是通过逻辑结构(分支结构、循环结构)解决问题的流程;数据结构就是把数据按照某种特定的结构来保存(数组这一常用的数据结构)。那么今天的文章开始,我们将详细的把数据结构的知识点介绍一遍。

5cdeed2a53487c5e5dd52505d5a03fc7.png

什么是数据结构

关于什么是数据结构,我们先看一下如下三个实例,通过具体的实例,我们让我们更加直观的认识什么是数据结构。

例1:已知游泳池的长len宽wide,求area。

通过已知条件我们不难发现,这是一个数值问题,我们首先给他建模型,问题涉及的对象:长len宽wide,面积area,他们之间的关系:area=len*wide,我们根据这三个对象的问题设计求解问题的方法。

例2:已知某班级学生情况,要求按入学成绩排序

456556830dc85cf3859a51e146958023.png

在这类非数值类文档管理的数学模型中,计算机处理的对象之间通常存在着一种最简单的线性关系,这类数学模型称之为线性模型。

例3:城市间交通网问题(图一):这种数学模型是一种成为“图”的数据结构。

b2c9d0a735b0bed6461439425502296c.png

综上所述,概括的说:数据结构是一门研究非数值计算的程序设计中,计算机的操作对象以及它们之间的关系和操作的学科。

在了解了什么是数据结构后,我们分别介绍一下数据结构学科中的基本概念:

数据与数据结构

所谓数据是指所有能够被输入到计算机中,并且能被计算机处理的符号的集合,是计算机操作对象的总称。是计算机处理的信息的某种特定符号表示形式。比如:一个数、一个字符串、图像、声音等。

数据元素是数据的基本单位,数据(集合)中的一个“个体”,是数据结构中讨论的基本单位,计算机程序通常将其作为一个整体进行处理。数据项是数据结构中讨论的最小单位,数据元素可以是数据项的集合。数据相同数据元素的集合我们称之为数据对象。

那么在这里,我们可以对数据结构做一个简单的解释:数据结构是相互间存在一种或多种特定关系的数据元素的集合,我们又称之为数据的“逻辑结构”。

数据的逻辑结构我们可以分为四类:线性结构、树形结构、图状结构、集合结构

11ff3b253133fe12ba334182939c9dd9.png

数据结构的形式定义

我们把数据结构的形式定义为:数据结构是一个二元组,Data_Structures=(D,S)。其中D是数据元素的有限集,S是D上关系的有限集。

例:在计算机学科中,复数可以如下定义:

复数是一种数据结构,Complex=(C,R)

其中C是两个实数的集合{c1,c2},R={P},P是关系{},其中表示复数的实部、虚部。

这种数据结构的定义是对操作对象的数学描述,是抽象出来的数学模型。结构定义中的关系是数据元素之间的逻辑关系,因此,这样定义的结构称之为“逻辑结构”。但是,我们研究数据结构的目的是为了在计算机中实现对它的操作,因此需要研究如何在计算机中表示这种逻辑结构。我们在下一篇文章中将介绍:数据的存储结构。

知识无限,小编在文章编辑过程中难免出现不尽人意的地方,欢迎大家批评指正,小编也将不断积累完善自己,让我们共同进步

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值