[数据结构与算法·C++版] 笔记 1.2 什么是数据结构

1.2 什么是数据结构

数据结构的组成

结构:实体 + 关系

数据结构:

  • 按照逻辑关系组织起来的一批数据,
  • 按一定的存储方法把它存储在计算机中
  • 在这些数据上定义了一个运算的集合

数据结构的逻辑组织

线性结构

  • 线性表(表,栈,队列,串等)

线性表

非线性结构

  • 树(二叉树,Huffman树, 二叉检索树等)
    二叉树

  • 图(有向图,无向图等)

关系:

在这里插入图片描述

数据的存储结构

  • 逻辑结构到物理存储空间的映射
  • 计算机主存储器(内存)
    • 非负整数地址编码,相邻单元的集合
      • 基本单位是字节
      • 访问不同地址所需时间基本相同(即随机访问)

存储结构分类:顺序、链接、索引、散列

抽象数据类型

简称ADT(Abstract Data Type)

  • 定义了一组运算的数学模型
  • 与物理存储结构无关
  • 使软件系统建立在数据之上(面向对象)

模块化的思想的发展

  • 隐藏运算实现的细节和内部数据结构
  • 软件复用

抽象数据结构二元组

  • <数据对象D,数据操作P>

定义过程

  • 先定义逻辑结构,再定义运算
    栈的抽象数据类型ADT

    • 逻辑结构:数据对象及其关系
    • 运算:数据操作

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

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

相关文章

11.1 溪降技术:下方保护

目录 11.1 下方(底部)保护概述观看视频课程电子书&#xff1a;底部保护技术要点 11.1 下方(底部)保护 概述 一名峡谷探险者为他的队友提供底部保护 峡谷探险是一项团队运动&#xff0c;作为峡谷探险团队的一员意味着在下降过程中要相互帮助、协作&#xff0c;特别是要关心彼此的…

库函数模块创建

工程创建 创建这个工程模版&#xff0c;是为了我们后面免去我们后面创建工程模版的步骤 创建这个文件&#xff0c;这个文件是用来存放我们编译生成的一些中间文件&#xff0c;C&#xff0c;汇编&#xff0c;链接的一些列表清单&#xff0c;调试信息&#xff0c;以及需要我们下…

Linux命令--05----find 日志

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 find1.语法语法&#xff1a;find 目标目录(路径) <选项> 参数 2.示例3.find 结合 xargs4.案例.* 模糊匹配 绝对路径 find 在 Linux 命令中&#xff0c;fin…

【Python】探索 Graphene:Python 中的 GraphQL 框架

人们常说挣多挣少都要开心&#xff0c;这话我相信&#xff0c;但是请问挣少了怎么开心&#xff1f; 随着现代 Web 应用对数据交互需求的不断增长&#xff0c;GraphQL 作为一种数据查询和操作语言&#xff0c;越来越受到开发者的青睐。Graphene 是 Python 语言中实现 GraphQL 的…

Redis面试真题总结(三)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 什么是缓存雪崩&#xff1f;该如何解决&#xff1f; 缓存雪崩是指…

Unity 高亮插件HighlightPlus介绍

主要是对官方文档进行了翻译(我做了一些补充和一些小的调整) 但是如果你只是想快速入门: Unity 高亮插件Highlight Plus快速入门-CSDN博客 注意:官方文档本身就落后实际,但对入门仍很有帮助,核心并没有较大改变,有的功能有差异,以实际为准.(目前我已校正了大部分差异,后续我…

appimage 软件创建桌面快捷图标

1、appimage 软件创建桌面快捷图标 1&#xff09;下载 AppImage 文件 首先&#xff0c;确保你已经下载了 AppImage 文件&#xff0c;并且该文件具有可执行权限。你可以通过以下命令为 AppImage 文件添加可执行权限&#xff1a; chmod x /path/to/your-app.AppImage2&#xff…

【复现】Grounding DINO使用记录

推理 问题 1. ModuleNotFoundError: No module named groundingdino 解决&#xff1a; 运行 python setup.py install 编译groundingdino库。或者直接引入环境变量&#xff1a; linux&#xff1a; export PYTHONPATH$PYTHONPATH:/data/groundingdino windows&#xff1…

hpux B.11.31 安装 JDK(详细步骤、多图预警)

目录 零、测试环境 一、获取 JDK 安装包 二、安装 JDK 1、操作指南 2、安装流程 &#xff08;1&#xff09;选中 Java JDK &#xff08;2&#xff09;&#xff08;可选&#xff09;选择安装目录 &#xff08;3&#xff09;点击安装 &#xff08;4&#xff09;&#xf…

C++门迷宫

目录 开头程序程序的流程图程序游玩的效果下一篇博客要说的东西 开头 大家好&#xff0c;我叫这是我58。 程序 #include <iostream> using namespace std; void printmaze(const char strmaze[11][11]) {int i 0;int ia 0;for (; i < 11; i) {for (ia 0; ia <…

nvm 下载node报错:Could not retrieve https://nodejs.org/dist/index.json.

报错信息&#xff1a;Could not retrieve https://nodejs.org/dist/index.json. Get "https://nodejs.org/dist/index.json": dial tcp 104.20.23.46:443: i/o timeout 这是因为node源都是国外的服务&#xff0c;连接超时&#xff0c;所以我们把node源设置为国内的镜…

YOLOv8改进 | 自定义数据集训练 | AirNet助力YOLOv8检测

目录 一、本文介绍 二、AirNet原理介绍 2.1 对比基降解编码器&#xff08;CBDE&#xff09; 2.2 降解引导修复网络&#xff08;DGRN&#xff09; 三、yolov8与AirNet结合修改教程 3.1 核心代码文件的创建与添加 3.1.1 AirNet.py文件添加 3.1.2 __init__.py文件添加 3…

Android Studio 开发快速获取开发版和发布版SHA1和MD5

本文讲解Android Studio 开发中如何快速获取开发版和发布版SHA1和MD5。 一、获取开发版: 点击Android Studio右上角Gradle按钮,打开Gradle视图 找到项目-Tasks-signingReport 双击即可AndroidStudio底部 Run面板获取开发版SHA1和MD5 二、获取发布版:

【Python深度学习系列】基于Flask将深度学习模型部署到web应用上(完整案例)

这是我的第356篇原创文章。 一、引言 使用 Flask 在 10 分钟内将您自己训练的模型或预训练的模型&#xff08;VGG、ResNet、Densenet&#xff09;部署到网络应用程序中。以图像分类模型为例&#xff0c;本地直接部署和本地使用docker部署两种方式实现。 二、实现过程 2.1 准备…

go webapi上传文件

一、导入依赖 import "net/http" 我这里用到了Guid所以安装依赖 go get github.com/google/uuid 二、main.go package mainimport ("fmt""github.com/jmoiron/sqlx""github.com/tealeg/xlsx""log""path/filepath&q…

深度学习的新突破:Difformer模型

人工智能咨询培训老师叶梓 转载标明出处 在现实世界中&#xff0c;数据之间的复杂相互依赖性是一个普遍存在的现象。这种错综复杂的依赖关系&#xff0c;对于传统的机器学习算法来说&#xff0c;是一个巨大的挑战。因为它们通常假设数据是独立同分布的&#xff0c;这使得算法难…

JS在线加密解密工具

快捷工具网得JS加密解密工具为您提供JS加密解密,js加解密工具,JS在线加解密,JS代码在线加解密,该工具基于eval方法的加密与解密功能&#xff0c;用户可将js代码加密成eval方法执行形式的代码&#xff0c;也可将eval方法加密过的代码进行解密操作。是一款非常简便实用的在线Java…

AC自动机详解,原理、优化分析,代码实现

零、前言 对于模式串匹配问题&#xff0c;在很多基础的数据结构课程中都有涉及到&#xff0c;如 KMP 算法&#xff0c;BM算法&#xff0c;Trie。 但是给定文本串&#xff0c;我们有多个模式串要去查询。难道要多次调用KMP / BM&#xff0c;或者在Trie上多次查询吗&#xff1f…

2024 研究生数学建模竞赛(F题)建模秘籍|X射线脉冲星光子到达时间建模|文章代码思路大全

铛铛&#xff01;小秘籍来咯&#xff01; 小秘籍团队独辟蹊径&#xff0c;运用轨道动力学模型&#xff0c;脉冲轮廓折叠&#xff0c;几何传播时延模型&#xff0c;相对论修正计算&#xff0c;泊松分布模拟等强大工具&#xff0c;构建了这一题的详细解答哦&#xff01; 为大家量…

数据预处理方法—数据标准化和数据归一化

1.数据标准化 1.1 概念&#xff1a; 标准化是将数据转化为均值为0&#xff0c;标准差为1的分布。通过标准化处理&#xff0c;所有特征在同一个尺度上&#xff0c;使得模型更加稳定和高效&#xff0c;尤其适用于正态&#xff08;高斯&#xff09;分布的数据。 1.2 原理 标准化…