数据结构、数据类型、抽象数据类型之间的区别

数据结构课后答案 第1章 绪论 1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。 答案: 数据:是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称。如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形、图像、声音、动画等通过特殊编码定义后的数据。 数据元素:是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。在有些情况下,数据元素也称为元素、结点、记录等。数据元素用于完整地描述一个对象,如一个学生记录,树中棋盘的一个格局( 阅读详情
AI摘要

本文深入探讨数据结构、数据类型及抽象数据类型的概念与区别,分析其在计算机科学中的作用与实现方式,帮助读者理解数据组织与处理的基础。

三者的定义(蓝字可忽略):

  • 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合,包括逻辑结构和物理结构。(数据元素是最基本的数据单位,最基本的数据元素是一个二进制位。)
    • 逻辑结构指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。包括: 
      • 1.集合:数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系; 
      • 2.线性结构:数据结构中的元素存在一对一的相互关系; 
      • 3.树形结构:数据结构中的元素存在一对多的相互关系; 
      • 4.图形结构:数据结构中的元素存在多对多的相互关系。
    • 物理结构:指数据的逻辑结构在计算机存储空间的存放形式。 
      • 数据的物理结构是数据结构在计算机中的表示(又称映像),它包括数据元素的机内表示和关系的机内表示。由于具体实现的方法有顺序、链接、索引、散列等多种,所以,一种数据结构可表示成一种或多种存储结构。 
      • 数据元素的机内表示(映像方法): 用二进制位(bit)的位串表示数据元素。通常称这种位串为节点(node)。当数据元素有若干个数据项组成时,位串中与个数据项对应的子位串称为数据域(data field)。因此,节点是数据元素的机内表示(或机内映像)。 
      • 关系的机内表示(映像方法):数据元素之间的关系的机内表示可以分为顺序映像和非顺序映像,常用两种存储结构:顺序存储结构和链式存储结构。顺序映像借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系。非顺序映像借助指示元素存储位置的指针(pointer)来表示数据元素之间的逻辑关系。 
  • 数据类型:是一个值的集合以及定义在这个值集上的一组操作。数据类型的分类为:原子类型和结构类型。
    • 为什么要有数据类型:计算机中内存也是有限的,为了提高内存使用效率,不浪费空间,自然是需要设计出数据类型来划定多大数据占多大内存空间,就有了数据类型。
  • 抽象数据类型:抽象数据类型(Abstract Data Type 简称ADT)是指一个数学模型以及定义在此数学模型上的一组操作。抽象数据类型需要通过固有数据类型(高级编程语言中已实现的数据类型,如int,float等)来实现。抽象数据类型是与表示无关的数据类型,是一个数据模型及定义在该模型上的一组运算。

数据结构和数据类型的区别:

  • 数据类型的分类为:原子类型和结构类型;
    • 原子类型 = 一种值的集合 + 定义在值集合上的一组操作。(比如:int,float,字符串)
      • int型:包括值集(1,2,3,4,5。。。),并且可以在这些值上进行+-*/
    • 结构类型 = 一种数据结构 + 定义在这种数据结构上的一组操作。(比如:python中的列表,字典,元组)
    • 原子类型 + 结构类型 = 数据类型
  • 总结:数据结构是一种值(值=数据元素)的集合(根据数据结构的定义,只是给“值的集合”加了个约束:数据元素相互之间存在一种或多种特定关系,所以可以把数据结构看作一种值的集合),这种值集+定义在值集上的一组操作就是结构类型,而结构类型是数据类型的一种,所以数据结构是一种数据类型。
  • 数据结构可以看成是数据类型的一个子集(如下图):

数据类型与抽象数据类型的区别:

  • 数据抽象的意义在于数据类型的数学抽象特性。抽象数据类型和数据类型实质上都是概念,只不过抽象数据类型是对数据类型的进一步抽象。不仅限于各种不同的计算机处理器中已经实现的数据类型,还包括为解决更为复杂的问题而由用户自定义的复杂数据类型。不仅限于各种不同的计算机处理器中已经实现的数据类型,还包括为解决更为复杂的问题而由用户自定义的复杂数据类型。如:C++中的类就是抽象数据类型的一种具体实现。
  • 通俗的讲:抽象数据类型,泛指除基本数据类型以外的数据类型。
    • 什么叫类型?就是一类数据。基本数据类型被人做是最基本地,不可再划分的数据,一般就是整形、浮点型、以及字符型。抽象数据类型是由若干基本数据类型归并之后形成的一种新的数据类型,这种类型由用户定义,功能操作比基本数据类型更多,一般包括结构体和类。其实说白了,抽象数据类型就是把一些有一定关联的基本数据类型打包,然后当做新的数据类型使用。
    • 抽象数据类型的用处:比如你要实现对一个人地信息管理,如果你只用基本数据类型那么你需要定义很多数据类型的变量比如名字、性别、出生地、生日之类的,并且操作起来不方便。如果用抽象数据来实现就简单了,直接把这些信息放包装在一个新的数据类型中,然后就可以直接定义这样的一个变量就可以了。

如果还不清楚两者的区别的话可以参考一下这篇文章:https://blog.youkuaiyun.com/weixin_42257806/article/details/80892797

数据结构和抽象数据类型之间的区别:

  • “数据结构”定义为一个二元组(D,S),即两个集合,D是数据元素的集合,S是数据元素之间一个或多个关系的集合。
  • “抽象数据类型”本质是“数据类型”,与计算机相关,涉及数据的存储及如何用存储来反应数据元素之间的关系。它定义为一个三元组(D,S,P),加上的P是定义的一组针对存储的数据操作(如插入,删除,排序等)。
  • 总之“抽象数据类型”是“物理”概念,“数据结构”是“逻辑”概念。“抽象数据类型”来实现“数据结构”。

上面就是对数据结构、数据类型、抽象数据类型之间的区别的说明,若有错误,欢迎指正。

同步辐射材料科学应用指南:从XAFS原位实验到数据处理 材料结构分析是材料研究的核心环节,但传统实验室X射线受限于能量固定、亮度不足,往往难以回答原子局域配位、非晶结构及动态演变等关键问题。同步辐射光源以高通量、连续可调、偏振可控及脉冲时间结构等特性,将材料表征从静态观察推进到原位动态追踪层次。基于X射线吸收精细结构谱(XAFS)、原位实验、X射线衍射与散射、微区成像等技术,研究人员可实现元素选择性分析、近邻原子环境解析及真实工况下的结构演变监测。本文从技术原理出发,覆盖实验方案设计、样品制备、现场对光、数据处理与常见故障排查,并结合典型应用场景,为材料科学领域 阅读详情

相关推荐

complier lab2

只需支持定义 main 函数即可不带参数 int main(){...}带参数 int main(int argc, int argv){...}

qq_43581843的博客 907

数据类型和抽象数据类型有什么区别

数据类型 数据类型是一个值的集合和定义在此集合上的一组操作的总称。 例如c语言中的整型,浮点型,他们的取值范围不同,进行运算时所遵循的规范也不同 抽象数据类型 抽象数据类型=逻辑结构+抽象运算 抽象数据类型暂不考虑计算机的具体存储结构和运算的具体实现。 抽象数据类型实质上,就是在描述问题本身(与计算机无关)。 目标:在不涉及具体的,和计算机系统相关的细节情况下,优先理解问题本身,在此基础上,实现用...

qq18__的博客 1万+

详细介绍pytorch重要的API

Tensor 是 PyTorch 中最基本的数据结构,提供了多种创建和操作张量的函数。Autograd 提供了自动求导功能,可以跟踪 Tensor 上的操作并计算梯度。损失函数用于衡量模型预测值与真实值之间的差异,提供了多种损失函数。是构建神经网络的基础类,提供了定义网络层和前向传播的方法。提供了 GPU 计算的支持,包括设备管理、内存管理等。提供了一些常用的函数式操作,如激活函数、损失函数等。提供了常用的数据集、模型架构和图像转换工具。提供了数据加载和预处理的工具,包括。

hello! 1223

数据类型和抽象数据类型

我们知道在各种编程语言中都会有数据类型。一.数据类型先看看为什么会有不同的数据类型呢?很简单,很多东西不能一概而论,而是需要更精确的划分。计算机计算1+1并不需要多么大的空间,但是计算10000000000+1000000000就得需要有个比较大的空间来放。还有有时候会计算小数,小数的位数不一样,需要的空间也就不一样。数字1和字母a也需要区分啊,于是开发者就想出了“数据类型”这一招,用来描述不同的数

Jijiahao95的博客 1381

PADS Layout新手必看:从元件摆放到地线处理的10个实用技巧

本文为PADS Layout新手提供了10个实用技巧,涵盖元件摆放、地线处理等关键环节。从功能模块化布局到高频信号处理,再到电磁兼容性设计,帮助初学者快速掌握PCB设计核心技能,提升Layout效率和质量。特别适合需要优化PADS Layout工作流程的设计师参考。

stone的博客 255

高通camera:PDAF的配置与测试

确认相关log日志都已经打开了之后,判断是在3A算法中没有应用到PDAF,可能是之前在调试AF效果的时候关闭了PDAF,打开效果文件对应的文件夹,在\kamorta_lce_S5K3P9\Scenario.Default\XML\STATS。在log中搜索af_pdaf_proc_pd_single,这个函数是pdaf算法中的,源码被封装了,这里看不到,因此只能通过log打印出来的参数来分析pd是否正确,主要参数有pd ,defocus,confidence。PDAF的配置与测试。

arvin_xiong的博客 2489

数据结构、数据类型、抽象数据类型之间的关系

计算机跨考选手刚刚学到了数据结构的绪论,感觉这块比较难以理解,分享一下自己的观点吧,还请大家多多指教~ 严蔚敏教授编写的《数据结构》中对于以上三者的定义是: 1. 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。 2. 数据类型:是一个值的集合和定义在这个值集上的一组操作的总称。 3. 抽象数据类型:是指一个数学模型以及定义在该模型上的一组操作。 数据结构的形式定义为:一个二元组,Data Structure = (D, S)其中D是数据元素的有限集,S是D上关系的有限集。 抽象数据类..

Ricol_xu的博客 6410

北斗导航 | 基于LSTM-KF融合的北斗卫星定位算法研究框架

针对北斗卫星导航系统在复杂环境下存在的多路径效应、非视距传播等问题,提出一种基于长短期记忆网络(LSTM)与卡尔曼滤波(KF)的组合定位算法。通过LSTM网络建模定位误差的非线性特征,结合卡尔曼滤波实现动态噪声抑制,构建"粗定位-LSTM校正-卡尔曼滤波优化"的三级处理架构。实验表明,融合算法较传统方法定位精度提升42.7%,均方根误差降低至1.2米。

尘世冰封的专栏 922

数据类型、数据结构和抽象数据型,三者之间关系

数据类型:在程序设计高级语言中,数据类型用来说明一个数据在数据分类中的归属。它是数据的一种属性。这个属性限定了该数据的变化范围。数据类型仅局限于计算机中定义并实现了的数据类型。 数据结构:指的是数据之间的相互关系。主要体现在三个方面:1.数据间的逻辑结构,及数据元素之间的关系。2.数据的存储关系,即数据在计算机中的存储结构。3.数据运算,即定义在逻辑关系上的一组操作。因此,数据结构所研究的问题...

yuyu00111的博客 5869

Ambari 3.0+BigTop 3.3集群部署实战

Ambari 3.0+BigTop 3.3集群部署

docsz的博客 612

SerDes学习笔记:均衡技术详解 01

本文系统阐述了高速SerDes链路中均衡技术的应用原理与实现方法。重点介绍了发射端预加重/FIR均衡和接收端CTLE/DFE/FFE等主流均衡方案,详细探讨了各类均衡器的频域特性、时域效果及硬件实现架构。

一只豌豆象的博客 1304

抽象数据类型

本篇文章简单的讲解下表、栈、队列。 首先先了解一下什么是抽象数据类型。 它是这么定义的: 抽象数据类型(abstract data type,即ADT)是带有一组操作的一些对象的集合。 那么ADT怎么理解呢? 首先你只需要记住表、集合、图以及与他们各自的操作一起形成的对象都可以被看做抽象数据类型. 这就跟整型、实数、布尔型都是数据类型一样. 简单来说,ADT是一种设计决策,它是一个广泛...

猴哥的博客 624

LOFIC / 全局快门在移动端的可行性:曝光容限、读出噪声与算力预算

手机端引入 LOFIC 与全局快门的核心权衡在于:在有限像素面积与功耗下,如何换取更高的动态范围与运动场景鲁棒性。LOFIC 通过侧向溢流到积分电容扩大满井并保持较高转换增益,全局快门在帧内一次性采样消除行时序伪影,但需付出像素填充率、读出噪声与片上存储功耗的代价。本文以工程可实操为目标,给出像素与读出链的简化模型、曝光损益测算、数据率与带宽估算、端到端算力与热预算方法,配套寄存器配置流程、帧内/帧间切换策略与验证清单,帮助在真实移动 SoC 与 ISP 约束下完成可行性评估与原型落地。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1140

数据结构-数据结构的基础概念

什么是数据? -数据是描述客观事物的数值、符号以及能输入机器且能被处理的各种符号集合。 -例如C语言,对于编译程序而言,接收的是.c文件,处理结果是.obj文件,对于链接程序来讲,处理的是.obj文件,结果是.exe文件 什么是数据元素? -数据元素是组成数据的基本单位,是数据集合的个体,也称元素 -例如这张数据表中,计算机通常把一条记录整体处理,而构成这些记录中的,就是数据元 什么是数据对象...

yinghua1234的博客 694

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Java数据结构入门以及数据结构和算法的关系

「这是我参与11月更文挑战的第12天,活动详情查看:2021最后一次更文挑战」。 简单介绍了数据结构的相关入门概念,以及数据结构的总体的分类,最后介绍了数据结构和算法的关系。 广义的数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。 狭义的数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 1 基本概念和术语 1.1 数据 数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。 数据.

q1472750149的博客 367

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

数据结构的基本概念(ADT 抽象数据类型 数据结构三要素)

数据结构的基本概念 一、基本概念与术语 1.数据 数据是信息的载体,是计算机程序加工的原料。 2.数据元素 数据元素是数据的基本单位,通常作为一个整体进行考虑,一个数据元素由若干数据项组成。 3.数据对象 数据对象是具有相同性质的数据元素的集合。 4.数据结构 数据结构是相互间存在一种或多种特定关系的数据元素的集合。 5.各代表范围 数据 > 数据结构 = 数据对象 > 数据元素 > 数据项 数据结构与数据对象都由数据元素组成,区别在于数据结构注重数据元素间的关系,数据对象注重数据元素中是

little_White12的博客 3903

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

数据结构-绪论

数据结构备考笔记,根据学习进度随时修正

qq_62063545的博客 391

数据结构的基本概念习题

1、可以用(D )定义一个完整的数据结构。 A、数据元素 B、数据对象 C、数据关系 D、抽象数据类型 解析: 抽象数据类型(ADT)描述了数据的逻辑结构和抽象运算,通常用(数据对象,数据关系,基本操作集)这样的三元组来表示,从而构成了一个完整的数据结构定义。 数据项:一个元素由若干数据项组成 数据元素:组成数据对象的基本单位 数据对象:性质相同的数据元素的集合(类似于数组一般) 2、以下数据结构...

一个随时准备弃坑的博客 8393

数据结构(C语言描述) 引论

1 算法及其复杂性的概念 1.1 算法与程序 1.2 算法复杂性的概念 1.3 算法复杂性的渐近性态 2 算法的表达与数据表示 2.1 问题求解 2.2 表达算法的抽象机制 3 抽象数据类型 4 数据结构、数据类型和抽象数据类型 5 用C语言描述数据结构与算法 6 递归 7 小结 ...

qq_740785701的博客 808

【数据结构】基本概念汇总(确定不看?)

数据结构 易混淆 易忘记的基本概念帮你整理好了,对考研也有帮助哦!

m0_68805093的博客 287

数据结构概论

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34192993的博客 98

第一章 绪论

答:数据的逻辑结构反映数据元素之间的逻辑关系(即数据元素之间的关联方式或“领接关系”),数据的存储结构是数据结构在计算机中的表示,包括数据元素的表示及其关系的表示。数据的运算是对数据定义的一组操作,运算是定义在逻辑结构上的,和存储结构无关,而运算的实现则是依赖于存储结构。通过散列函数和解决冲突的方法,将关键字散列在连续的有限的地址空间内,并将散列函数的值解释成关键字所在元素的存储地址,这种存储方式称为散列存储。算法的输入规模是作为该算法的数据所含数据元素的数目,或于此数目有关的其它参数。

yyy_zxc的博客 201

数据结构—概念篇

加载中的数据结构

zy20211127的博客 560

python学习 算法初步 数据结构

数据是一个抽象的概念,将其进行分类之后会得到程序设计语言中的基本类型。比如:int,float,char等。数据元素之间不是独立的,存在特定的关系,这些关系便是结构。数据结构指数据对象中数据元素之间的关系。 ** 算法与数据结构的区别与联系: ** 数据结构只是静态的描述了数据元素之间的关系。 高效的程序需要在数据结构的基础上设计和选择算法。 程序 = 数据结构 + 算法 总结:算法是为了解决实际...

IWTK_wcl的博客 298

数据结构——一、数据结构基本概念(王道408)

摘要:本文基于王道408课程笔记,系统介绍了数据结构的基本概念。主要内容包括:1)数据作为信息载体的定义;2)数据元素与数据项的层级关系;3)数据结构三要素(逻辑结构、存储结构、数据运算),详细解析了集合、线性、树形、图状四种逻辑结构,以及顺序、链式、索引、散列四种存储方式的特点;4)数据类型与抽象数据类型(ADT)的区别;5)学习数据结构应关注的重点。文章通过大量图示直观展示各类结构关系,强调数据结构研究的是元素间关系而非具体数据内容,并指出运算定义与实现的不同层面。笔记内容详实,对计算机专业学生具有参考

2301_80201235的博客 1355

数据结构作业1-数据结构基本概念

1-1 抽象数据类型中基本操作的定义与具体实现有关。 (1分) T F 1-2 若用链表来表示一个线性表,则表中元素的地址一定是连续的。 (1分) T F 2-1 在决定选取何种存储结构时,一般不考虑()。 (2分) A.所用编程语言实现这种结构是否方便 B.对数据有哪些运算 C.结点个数的多少 D.各结点的值如何 2-2 在数据结构中,与所使用的计算机无关的数据结构是()。 (2分) ...

545
上一篇: 对VS、QT及两者开发应用程序的认识
下一篇: C++primer第五版
一号业余玩家
博客等级 码龄9年 6粉丝 3原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值