数据结构之逻辑结构与存储结构
转自逻辑结构和存储结构
百度百科:数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。结合今天在复习过程中新的理解,主要总结一下逻辑结构和存储结构。
什么是逻辑结构?
简单说,逻辑结构就是数据之间的关系。而按数据之间的关系来说,逻辑结构大概可以分为两种:线性结构和非线性结构(集合、树、网)。
线性结构:有且只有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前驱和一个直接后继。例如:线性表,典型的线性表有:顺序表、链表、栈(顺序栈、链栈)和队列(顺序队列、链队列)。它们共同的特点就是数据之间的线性关系,除了头结点和尾结点之外,每个结点都有唯一的前驱和唯一的后继,也就是所谓的一对一的关系。
非线性结构:对应于线性结构,非线性结构也就是每个结点可以有不止一个直接前驱和直接后继。常见的非线性结构包括:树(二叉树)、图(网)等。什么是存储结构?
逻辑结构指的是数据间的关系,而存储结构是逻辑结构的存储映像。通俗的讲,可以将存储结构理解为逻辑结构用计算机语言的实现。常见的存储结构有顺序存储、链式存储、索引存储以及散列存储(哈希表)。
顺序存储:把逻辑上相邻的节点存储在物理位置上相邻的存储单元中,结点之间的逻辑关系由存储单元的邻接关系来体现。由此得到的存储结构为顺序存储结构,通常顺序存储结构是借助于数组来描述的。优点:节省空间,可以实现随机存取;缺点:插入、删除时需要移动元素,效率低。
链式存储:在计算机中用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。特点是元素在物理上可以不相邻,所以每个数据元素包括了一个数据域和一个指针域,数据域用来存放数据,而指针域用来指向其后继结点的位置。优点:插入、删除灵活;缺点:不能随机存取,查找速度慢。
逻辑结构和存储结构的区别
这两者并不冲突,一个指的是数据之间的关系,而另一个指这种关系在计算机中的表现形式。比如,线性表中的栈,数据元素之间的关系是一对一的,除头和尾结点之外的每个结点都有唯一的前驱和唯一的后继,这体现的是逻辑结构;而对于栈中的结点来说,它们可以顺序存储(也就是顺序栈),取一段连续的存储空间,将栈结点按顺序存入,每个结点和其前驱和后继在物理上都是相邻的。同时,栈结点也可以链式存储(链栈),每个结点中包括数据域和指针域,而指针域就是用来指向其后继的,在访问时就可以通过指针来找到其后继进行访问,每个结点之间物理上可以相邻也可以不相邻。
另外的总结
不同的线性表之间的区别:
线性表在元素的关系上是一样的,都是“线性“关系,不同的线性表区别主要体现在不同的特性上。比如:队列的先进先出、栈的后进先出等。
以存储结构相同、逻辑结构又同为线性表的链栈和链队列为例,它们都是链式存储的,每个结点都是由数据域和指针域组成,每个结点也都有唯一的前驱和唯一的后继(除头尾结点外)。那么它们看起来就很相似,区别呢?区别就在于给他们定义的特殊操作,它们都有”出“和”入“两种操作,一个是“先进先出”,而一个是“后进先出”。
数据结构之逻辑结构与存储结构相关推荐
- 数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型的概念
数据: 是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称.如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形.图像.声音.动画等通过特殊编码定义后的数 ...
- 简述数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型
1.数据:描述客观事物的数字.字符以及能输入机器且被处理的各种符号的集合. 2.数据元素:数据元素是组成数据的基本单位,通常称为记录. 3.数据项:不可分割的最小单位,具有独立含义. 3.数据对象:性 ...
- 【数据结构】数据结构的基本概念——逻辑结构、存储结构、抽象数据类型
文章目录 一.基本概念和术语? 1.数据 2.数据元素 3.数据项(属性.字段) 4.数据对象 5.数据结构 二.逻辑结构和物理结构(存储结构) 1.逻辑结构 1)定义 2)分类(线性结构和非线性结构 ...
- 数据结构(一)逻辑结构和存储结构
文章目录 数据结构 逻辑结构 集合结构 线性结构 树状结构 网络结构(图形) 物理结构(存储) 顺序存储结构 链式存储结构 索引存储结构 散列存储结构(哈希) 数据结构对性能的影响 数据结构 数据结构 ...
- 什么是数据结构以及数据结构的存储方式、逻辑结构和存储结构的关系、数据结构的运算、逻辑结构的四种基本类型
一.什么是数据结构 1.数据结构的起源 数据结构不是研究数值计算的这些是数学家应该研究的问题,它是研究计算机存储.组织数据的方式问题的学科,数据结构会影响算法的效率,合适的数据结构可以 ...
- 数据结构32:树存储结构
之前介绍的所有的数据结构都是线性存储结构.本章所介绍的树结构是一种非线性存储结构,存储的是具有"一对多"关系的数据元素的集合. (A) ...
- 三、逻辑结构与存储结构的区分
一.问题背景 不管是计算机专业的考研初试还是工作面试,数据结构都是很重要的课程.而博主最近看的王道论坛2020的数据结构开篇就有按照逻辑结构和存储结构将各种数据结构进行分类,本文就结合所有知识点充分讲 ...
- 数据的逻辑结构和存储结构
数据的逻辑结构合存储结构 一,逻辑结构 数据的逻辑结构是对数据元素之间逻辑关系的描述,它与数据在计算机中存储方式无关,根据数据元素之间的不同特性,可以对数据的逻辑结构进行分类 分类1:(选型结构和非线 ...
- 数据结构之树的存储结构
数据结构之树的存储结构 思维导图 双亲表示法: 增 删 孩子表示法: 孩子兄弟表示法:(重要) 森林和二叉树的转化 思维导图 双亲表示法: 增 增加M.L节点 删 删除G节点(叶节点) 删除(非叶节点 ...
最新文章
- linux操作系统基本配置
- mysql时区设置gmt_将MySQL数据库时区设置为GMT
- Visual Leak Detector 2 2 3 Visual C++内存检测工具
- Silverlight使用DataGrid的模板列(DataGridTemplateColumn)实现类似TreeListView控件的效果
- Qt总结之十二:C/C++内存分配方式与存储区
- python编写登录接口_Python之编写登录接口
- pku 1459 最大流 SAP
- MySQL online create index实现原理
- 浏览器网页操作 EXCEL 示例
- 彩虹QQ查看对方ip原理
- 软件开发生命周期的四个阶段
- lombok报错Ambiguous method call. Both
- scl 转换gcc版本
- 困牛放牧(Sleepy Cow Herding)
- Spring中bean的scop
- RGB颜色值与十六进制颜色码
- 如何从零基础学嵌入式
- 手机app应用免费监控软件U-APM保姆级教学,入门使用
- 高仿网易新闻栏目动画效果
- 电子计算机上C1的功能,发布会现场实测搜狗智能录音笔C1:录音转文字效果出人意料...
热门文章
- 南华工商学院计算机,南华工商学院清远校区
- 安全生产预警智慧信息化管理系统软件
- c++数组求和函数 accumulate()
- UOS多显卡配置以及kvm虚拟机配置多屏或多显卡备忘
- 2019年usnews世界计算机排名,2019年USNews世界大学排名公布
- LiveGBS流媒体平台GB/T28181常见问题-播放花屏、没有通道、无法语音对讲等情况下Windows和Linux中如何抓包
- 架构道术-架构应该了解的产品故事
- linux下版图设计,版图课程设计报告
- 你的起始页全是广告,我做了一个开始页(起始页分享)
- c#求三角形面积周长公式_C# 定积分求周长面积原理 代码实现