数据结构 第一章 数据结构绪论

数据结构是研究数据元素间关系和操作的学科,包括逻辑结构(集合、线性、树形、图状)和物理结构(顺序、链式)。抽象数据类型是数据结构的数学模型,关注数据及操作,与实现方式无关。逻辑结构与物理结构的分离使得数据在计算机中的表示更加灵活。
摘要由CSDN通过智能技术生成

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。

数据:所有能被输入到计算机中,且能被计算机处理的符号的集合。是计算机操作的对象的总称。
数据元素:数据(集合)中的一个“个体”,(组成数据的的有一定意义的)数据及结构中讨论的基本单位(也称为记录)
数据项:数据的不可分割的最A单位。一个数据元素可由若干个数据项组成。
数据类型:在一种程序设计语言中,变量所具有的数据种类。整型、浮点型、字符型等等
数据对象:是性质相同的元素的集合,是数据的子集。

不同数据元素之间不是独立的,而是存在特定的关系,我们将这些关系成为结构。
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。(也就是数据的组织形式)

按照视点的不同,我们把数据结构分为逻辑结构和物理结构。

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

在数据结构中,从逻辑上可以将其分为线性结构和非线性结构

集合 结构中的数据元素除了同属于一种类型外,别无其它关系。(集合结构)
线性结构 数据元素之间一对一的关系(线性结构)
树形结构 数据元素之间一对多的层次关系(非线性结构)
图状结构或网状结构 结构中的数据元素之间存在多对多的关系(非线性结构)

物理结构/存储结构:数据在计算机中的表示。物理结构是描述数据具体在内存中的存储(如:顺序结构、链式结构、索引结构、哈希结构)等。

物理结构是指数据的逻辑结构在计算机中的存储形式。(实际上就是如何把数据元素存储到计算机的存储器中)

数据元素的存储结构形式有两种:顺序存储和链式存储。

1.顺序存储结构
    顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。

2.链式存储结构
    链式存储结构:是把数据元素存放在任意存储单元里,这组存储单元可以是连续的,也可以是不连续的。(数据元素的关系并不能反应其逻辑关系,因此需要通过一个指针存放数据元素的地址,这样通过地址就可以找到相关联数据元素的位置)

逻辑结构是面向问题的,而物理结构是面向计算机的,其基本目标就是将数据及其逻辑关系存储到计算机的内存中。

数据类型:是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。

在C语言中,按照取值的不同,数据类型可以分为两类:
原子类型:是不可以再分解的基本类型,包括整形、实型、字符型等。
结构类型:由若干个类型组合而成,是可以再分解的。例如,整数型数组是由若干个整型数组组成的

抽象是指抽取出事物具有的普遍性的本质。
它是抽出问题的特征而忽略非本质的细节,是对具体事物的一个概括。抽象是一种思考问题的方式,它隐藏了繁杂的细节,只保留了实现目标所必须实现的信息。

我们对已有的数据进行抽象就有了抽象数据类型。
抽象数据类型(Abstract Data Type,ADT):一个数学模型以及定义在该模型上的一组操作。
抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示与实现无关。

(以上内容从《大话数据结构》整理,仅当学习笔记使用)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值