1.1数据结构基本概念

news/2024/9/28 19:26:54

1.1数据结构基本概念

什么是数据?

数据是信息的载体,是描述客观事务属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合(二进制0和1)。数据事计算机程序加工的原料。

数据元素、数据项

数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。
一个数据元素可由若干数据项组成,数据项是数据结构元素的不可分割的最小单元。

数据结构、数据对象

数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
数据对象具有相同性质的数据元素的集合是数据的一个子集。

数据结构三要素

  • 逻辑结构

  • 物理结构(存储结构)

  • 数据的运算

数据的逻辑结构

  • 集合

  • 线性结构

  • 树形结构

  • 图状结构(网状结构)

集合:各个元素同属一个集合,别无其他关系
线性结构:数据元素之间是一对一的关系。除第一个元素,所有元素都有唯一前驱;除了最后一个元素所有元素都有唯一后驱
树形结构:数据元素之间是一对多的关系
图状结构:数据元素之间是多对多的关系

  • 数据的物理结构(存储结构)
  • 顺序存储
  • 非顺序存储
    链式存储
    索引存储
    散列存储

顺序存储

把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间的给关系由存储单元的邻接关系来体现。

链式存储

逻辑上相邻的元素在物理位置上可以不相邻(也可以相邻),借助指示元素存储地址的指针来表示元素之间的逻辑关系。
image

索引存储

在存储信息的同时,还建立附加的索引表。索引表中的每项称为索引项,索引项的一般形式是(关键字,地址)
image

散列存储

根据元素的关键字直接计算出该元素的存储地址,又称哈希(Hash)存储。

notes:

  • 若采用顺序存储,则各个数据元素在物理上必须是连续的;若采用非顺序存储,则各个数据元素在物理上可以是离散的(也可以是连续的)
  • 数据的存储结构会影响存储空间分配的方便程度
  • 数据的存储结构会影响对数据运算的速度

数据的运算

施加在数据上的运算包括运算的定义和实现。运算的定义是针对逻辑结构的,指出运算的功能;
运算的实现是针对存储结构的,指出运算的具体操作步骤

数据类型、抽象数据类型

数据类型是一个值的集合和定义在此集合上的一组操作的总称

  • 原子类型。其值不可再分的数据类型。

  • 结构类型。其值可以再分解成若干分(分量)的数据类型。

bool类型 int类型
值的范围:true、false 值的范围:-2147483648~2147483647
可进行的操作:与、或、非... 可进行的操作:加、减、乘、除、模运算

抽象数据类型(ADT):是指抽象数据组织及与之相关的操作。
image
image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/30201.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

枚举类的相关使用

Java 枚举类 枚举类的含义 枚举类型是Java 5中新增特性的一部分,它是一种特殊的数据类型,之所以特殊是因为它既是一种类(class)类型却又比类类型多了些特殊的约束,但是这些约束的存在也造就了枚举类型的简洁性、安全性以及便捷性。枚举类的常见使用场景1、定义业务相同的一类…

DSP学习笔记之SPI

DSP学习笔记之SPI SPI介绍 SPI 的全称是"Serial Peripheral Interface",意为串行外围接口。SPI 是一种高速的,全双工,同步的通信总线,SPI采用主从方式工作,一般有一个主设备和一个或多个从设备; SPI需要至少4根线,分别是MISO(主设备输入从设备输出)、MOSI(…

python用魔塔大模型生成国画

模型地址 https://www.modelscope.cn/models/langboat/Guohua-Diffusion/summary 新建一个main.py from modelscope.utils.constant import Tasks from modelscope.pipelines import pipeline import cv2pipe = pipeline(task=Tasks.text_to_image_synthesis, model=langboat/G…

振弦采集仪在岩土工程监测中的数据处理与结果展示

振弦采集仪在岩土工程监测中的数据处理与结果展示 河北稳控科技振弦采集仪是岩土工程监测中常用的一种设备,用于采集地下土体振动信号,通过对数据的处理与结果的展示,可以有效地评估土体的动力特性和工程的稳定性。 振弦采集仪通过安装在土体中的振弦传感器,可以对土体的振…

BOSHIDA AC/DC电源模块的节能技术与环保优势

BOSHIDA AC/DC电源模块的节能技术与环保优势 AC/DC电源模块是一种广泛应用于各种电子设备中的电源转换器。随着环保意识的增强,节能技术成为了设计和生产这些模块的关键考虑因素。本文将介绍AC/DC电源模块的节能技术以及它们所带来的环保优势。 首先,AC/DC电源模块的节能技术…

ELL-8051-LIB - 面向8051的高效低封装函数库+KLite - 简洁易用的嵌入式操作系统内核

1、Arm-2D - 基于Cortex-M的2D图形加速库 ARM官方出品的2D图形加速库,在Cortex-M55系统频率 8MHz 下就可以实现30fps的渲染(6图层。320x240,rgb565)。项目主页: https://github.com/ARM-software/EndpointAI/tree/master/Kernels/Research/Arm-2DArm-2D 库特性包括但不限于:…

利用pearcmd实现裸文件包含

docker 环境的靶机下,有没有什么更加普适性的方法来实现文件包含+命令执行?利用pearcmd实现裸文件包含 在 ctf 中,常常有这样一类题: 题目很简单,一般围绕一个 include 函数展开。 例: ctfshow 元旦水友赛 easy_include这类题目没有提供文件上传点,因此不能使用常规方法…

怎么把excel里已经变成科学记数法的数字恢复

从数据库导出的数据经常有id字段,包含一长串的数字,导出为excel或者csv格式后打开,id字段经常被转换成科学技术法了,不方便查看。 如果想把它转变为通常的显示方法,在单元格上点击鼠标右键,点击“设置单元格格式”。 在打开的窗口中,切换到“数字”选项卡,点击“自定义…