数据结构:绪论(数据对象,逻辑结构,数据的运算,物理结构)

news2024/11/15 20:00:39

目录

  • 1.数据
  • 2.数据元素、数据项
  • 3.数据对象
  • 4.数据结构
    • 1.逻辑结构
      • 1.集合结构
      • 2.线性结构
      • 3.树形结构
      • 4.图状结构
    • 2.数据的运算
    • 3.物理结构(存储结构)
      • 1.顺序存储
      • 2.链式存储
      • 3.索引存储
      • 4.散列存储
    • 4.数据结构的选择
  • 5.数据类型

1.数据

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

2.数据元素、数据项

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

3.数据对象

数据对象是具有相同性质的数据元素的集合,是数据的一个子集。
在这里插入图片描述

4.数据结构

数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
同一个数据对象里的数据元素,可以组成不同的数据结构。
不同的数据元素,可组成相同的数据结构。
数据结构三要素包括:逻辑结构,物理结构,数据的运算

1.逻辑结构

1.集合结构

各个元素同属一个集合,别无其他关系。

2.线性结构

数据元素之间是一对一的关系。
除了第一个元素,所有元素都有唯一前驱;
除了最后一个元素,所有元素都有唯一后继
在这里插入图片描述

3.树形结构

数据元素之间是—对多的关系。
在这里插入图片描述

4.图状结构

数据元素之间是多对多的关系。
在这里插入图片描述

2.数据的运算

针对于某种逻辑结构,结合实际需求,定义基本运算。
基本运算包括:查找元素,插入元素,删除元素…

3.物理结构(存储结构)

1.顺序存储

逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。
在这里插入图片描述

2.链式存储

逻辑上相邻的元素在物理位置上可以不相邻,借助指示元素存储地址的指针来表示元素之间的逻辑关系。
在这里插入图片描述
指针表示下一个数据元素的存储地址。

3.索引存储

在存储元素信息的同时,还建立附加的索引表
索引表中的每项称为索引项,索引项的一般形式是(关键字,地址)。
在这里插入图片描述

4.散列存储

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

4.数据结构的选择

①若采用顺序存储,则各个数据元素在物理上必须是连续的。
②若采用非顺序存储,则各个数据元素在物理上可以是离散的。
③数据的存储结构会影响存储空间分配的方便程度。
④数据的存储结构会影响对数据运算的速度
⑤运算的定义是针对逻辑结构的,指出运算的功能;
⑥运算的实现是针对存储结构的,指出运算的具体操作步骤。

5.数据类型

数据类型是一个值的集合和定义在此集合上的一组操作的总称。
原子类型。其值不可再分的数据类型。(int类型,bool类型)
结构类型。其值可以再分解为若干成分(分量)的数据类型。(结构体)
③抽象数据类型(Abstract Data Type,ADT)是抽象数据组织及与之相关的操作。(自定义数据结构,采用封装的思想。)

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

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

相关文章

返利管理系统建设指南

目录 引子 一、返利业务模式介绍 1. 什么是返利 2. 返利与优惠区别 3. 业务模式 4. 返利管理业务流程 二、返利系统建设说明 1. 业务架构 2. 主要功能 三、结束语 引子 返利作为供应商在商业活动开拓新市场、挖掘存量市场潜力,激励经销商的销售策略&…

Mac/Linux类虚拟机_CrossOver虚拟机CrossOver 23.6正式发布2024全新功能解析

CodeWeivers 公司于今年 10 月发布了 CrossOver 23.6 测试版,重点添加了对 DirectX 12 支持,从而在 Mac 上更好地模拟运行 Windows 游戏。 该公司今天发布新闻稿,表示正式发布 CrossOver 23 稳定版,在诸多新增功能中,最…

HackerOne支付给道德黑客超过3亿美元的漏洞赏金

导语 近日,HackerOne宣布自其成立以来,其漏洞赏金计划已经支付给道德黑客和漏洞研究人员超过3亿美元的奖励。这个数字令人瞠目结舌,展示了道德黑客在网络安全中的重要性。让我们一起来看看HackerOne的成就和一些有趣的数据。 道德黑客的奖励 …

项目资源管理-考试重点

1. 冲突管理的5种方法 ① 撤退/回避 ② 缓和/包容 ③ 妥协/调解 ④ 强迫/命令 ⑤ 合作/解决问题 2. 虚拟团队的优缺点 优点: ① 能够利用不在同一地理区域的专家的专业技术 ② 将在家办公的员工纳入团队 ③ 以及将行动不便者或残疾人纳入团队 缺点&#…

codeforces (C++ Doremy‘s Paint 3)

题目: 翻译: 思路: 1、题目意思:将数组中的数进行排列,任意相邻两个数的和都相等,才能说这个数组为好。一下分三种情况讨论。 2、当数组中有三种及三种以上的数字,那任意相邻两个数的和都相等必…

【算法】染色法判定二分图

题目 给定一个 n 个点 m 条边的无向图,图中可能存在重边和自环。 请你判断这个图是否是二分图。 输入格式 第一行包含两个整数 n 和 m。 接下来 m 行,每行包含两个整数 u 和 v,表示点 u 和点 v 之间存在一条边。 输出格式 如果给定图是二分…

Linux网络编程02

UDP协议 UDP协议处于传输层,是不可靠谱、无连接、消息有边界的协议 TCP类似于管道,UDP类似于队列 UDP头部 传输层头部都不需要IP地址,都只需要端口号 Berkeley Socket(库) Berkeley Scoket 库已经完成了传输层之下…

【Xilinx Kintex-7 Virtex-7 LVDS bank电压】

各种介绍很多,也都写的似乎很长很详细,但有错误。 详细的查阅Xilinx 论坛 43989 核心 总结一下就是Xilinx 7serious 的FPGA ,你如果要配置成LVDS,这的LVDS是正儿八经的那种,那么FPGA 这块你只需要记住两点就可以。 第一,假如你…

docker-compose 简单部署Flask + Redis + Nginx环境搭建网站

主博客目录:《从零开始学习搭建量化平台笔记》 主项目计划需要搭建一个 Flask Redis Nginx环境 来制作一个可视化的网站,为了避免搭完就忘,因此就有了这个博客。 任务:搭建一个内网通信且只有由Nginx代理发放的网页端显示环境。…

Unity多人同时在线海量玩家角色的架构与设计

前言 Unity多人同时在线的游戏会有很大的地图,大量的玩家同时在线,以及玩家会有不同的游戏职业,这样众多的玩家游戏角色我们客户端应该如何来设计呢?本文来分享以下几个点 对惹,这里有一个游戏开发交流小组,希望大家…

腾讯待办小程序关停怎么办?可替代的智能待办提醒工具

有不少小伙伴在选择待办提醒工具时,会使用微信中的腾讯待办小程序,在里面逐条记录待办事项、设置定时提醒,然后通过微信接收待办提醒。 不过最近一段时间,使用腾讯待办的用户都发现了“业务关停通知”的弹窗,确实如此…

代码随想录打卡第五十五天|● 300.最长递增子序列 ● 674. 最长连续递增序列 ● 718. 最长重复子数组

300.最长递增子序列 **题目:**给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0…

高数笔记04:微分方程与多元函数微分学

图源:文心一言 时间比较紧张,仅导图~~🥝🥝 第1版:查资料、画导图~🧩🧩 参考资料:《高等数学 基础篇》武忠祥 🦮思维导图 😶‍🌫️思维导图为整…

1.面向对象——继承

继承 子类拥有父类非 private 的属性、方法。 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。 子类可以用自己的方式实现父类的方法。 提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码…

强化学习------DDQN算法

前言 DQN算法 DQN算法有一个显著的问题,就是DQN估计的Q值往往会偏大。这是由于我们Q值是以下一个s’的Q值的最大值来估算的,但下一个state的Q值也是一个估算值,也依赖它的下一个state的Q值…,这就导致了Q值往往会有偏大的的情况…

antd+全屏的坑(全屏下a-modal/下拉框等不展示)

问题:针对某个元素全屏时,下拉框/弹窗/二次确认窗不展示:下拉框是往body里面插入的,全屏的元素盖住了下拉框。解决:给有下拉框的加入:append-to-body"false"(缺点:每个都需要加&#…

k8s的概念

概念 它是一种开源的容器编排平台,用于自动化部署,扩展和管理容器化的应用程序,它提供了一种容器编排和管理的方式,可以帮助开发人员更轻松地管理容器化的的应用程序,并且提供了一种跨多个主机的自动化部署和管理机制…

为什么看了那么多测试技术帖,感觉自己还是菜?

作为测试新手,最爱莫过于看各大牛发的技术贴,这篇很牛叉,那篇也很有道理,似乎自己看着看着也会成为高手。然而几年后,发现自己对专业知识的理解乱的很,里面更有很多自相矛盾的地方,这到底是哪里…

PFAF-Net

I 1 _1 1​和I 2 _2 2​是多模态图像,I F _F F​是融合图像。FT 1 _1 1​是基于空间注意力的融合,FT 2 _2 2​是基于通道注意力的融合 作者未提供代码

Spring及SpringBoot中AOP的使用

Spring中AOP示例 <dependencies><!--Spring核心包--><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.3.6</version></dependency><!--引入SpringBean--&…