当前位置: 首页 > article >正文

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

1.2 什么是数据结构

数据结构的组成

结构:实体 + 关系

数据结构:

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

数据结构的逻辑组织

线性结构

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

线性表

非线性结构

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

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

关系:

在这里插入图片描述

数据的存储结构

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

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

抽象数据类型

简称ADT(Abstract Data Type)

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

模块化的思想的发展

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

抽象数据结构二元组

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

定义过程

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

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

http://www.kler.cn/a/318792.html

相关文章:

  • Leetcode:219
  • 论文阅读(九):通过概率图模型建立连锁不平衡模型和进行关联研究:最新进展访问之旅
  • 生成模型:扩散模型(DDPM, DDIM, 条件生成)
  • git中有关old mode 100644、new mode 10075的问题解决小结
  • 17 一个高并发的系统架构如何设计
  • 【C++题解】1393. 与7无关的数?
  • docker快速部署zabbix
  • 快递智能地址解析API接口代码
  • 支持K歌音箱方案应用的高性能 32 位蓝牙音频应用处理器-BP1048B2
  • 【解决方案】git错误:对象文件为空 error: object file
  • 考研日语 - 高频核心 2200 词(五)
  • 【算法】模拟:(leetcode)495.提莫攻击(easy)
  • linux服务器自动同步数据库
  • vue3腾讯云实时音视频通话 ui集成方案TUIcallkit
  • 富格林:可信交易筹划在线曝光
  • Python 解析 html
  • 股指期货理论价格计算公式是什么?
  • 【论文】FunAudioLLM:一个旨在增强人类与大型语言模型(LLMs)之间自然语音交互的模型家族
  • 如何在算家云搭建DiffSynth-Kolors-Painter(图像生成)
  • 【ARM】AMBA和总线
  • 详解机器学习经典模型(原理及应用)——随机森林
  • 【JS】严格模式/非严格模式的区别
  • Android 平台使用VIA创建语音交互应用开发指南
  • 更新C语言题目
  • 【linux】gcc makefile
  • 从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用