数据结构考研:数据结构的三要素:逻辑结构,存储结构,数据计算的详细区分与讲解(软件工程/计算机/王道论坛)

一、问题背景

不管是计算机专业的考研初试还是工作面试,数据结构都是很重要的课程。而博主最近看的王道论坛2020的数据结构开篇就有数据结构的三要素:逻辑结构,存储结构,数据计算,本文就结合所有知识点充分讲解各个元素之间的区别与联系。

二、数据结构的三要素:逻辑结构,存储结构,数据计算

下图是博主用Xmind绘制的数据结构全部的逻辑结构,存储结构,数据计算的最详细的思维导图。
在这里插入图片描述
如果你想具体了解一下逻辑结构中的线性表,顺序表,有序表,链表,数组的概念的区别与联系,可以点击博主的博文数据结构考研:线性表,顺序表,有序表,链表,数组的概念的区别与联系(软件工程/计算机/王道论坛)
如果你想具体了解一下存储结构中的随机存取、顺序存取、随机存储和顺序存储的区别/详细解释,可以点击博主的博文数据结构考研:随机存取、顺序存取、随机存储和顺序存储的区别/详细解释(计算机/软件工程/王道论坛)

三、逻辑结构与存储结构的区分

在数据结构的考研真题和计算机笔试中,总有区分逻辑结构与存储结构的题目。
先说结论:线性表、有序表是逻辑结构;顺序表,链表是存储结构。

逻辑结构与存储结构的判定方法:当一个结构(如数组、链表、树、图),在逻辑结构中只有一种定义,而在物理结构中却有两种或多种定义,那么这个结构就属于逻辑结构;相反,当此结构在原有基础上加上了某种限定词(如二叉树->线索二叉树),使得其在物理结构中只有一种定义,那么这个结构就属于物理(存储)结构,或称为数据结构;

举例1:栈属于什么结构?
分析:栈在逻辑结构中只能属于线性结构,而在物理结构中它可以使用顺序存储(数组),也可以使用链式存储(链表),所以说栈是一种逻辑结构。

举例2:线索二叉树属于什么结构?
分析:首先因为二叉树既可以顺序存储又可链式存储,故可以得到二叉树是一种逻辑结构。但是线索二叉树是二叉树加上限定词线索后的链表结构(不能用顺序存储),也就是说,线索二叉树在计算机内部的只有一种存储结构,所以线索二叉树是物理结构。

逻辑结构和存储结构的区别点在于:数据的逻辑结构是独立于在计算机中的存储结构的,数据的存储方式有多种不同的选择。例如栈是一种逻辑结构,它可以用顺序存储也可以用链式存储。

而数据结构是既可以描述逻辑结构又可以描述存储结构和数据运算,必须包含以上三种元素。所以像顺序表、哈希表、单链表都是数据结构。


本文参考文献:
[1]线性表,顺序表,链表,数组的区别与联系
[2]数据结构知识整理4线性表——顺序表、链表、有序表
[3]有序表
[4]如何判断某种结构是逻辑结构还是存储结构或数据结构?
[5]随机存取、顺序存取、随机存储和顺序存储
[6]随机存取-百度百科
[7]顺序表(顺序存储结构)及初始化详解
[8]磁盘系统基本概念以及磁盘的顺序读写与随机读写
[9]顺序存储结构-百度百科
[10]四种数据存储结构—顺序存储 链接存储 索引存储 散列存储

发布了120 篇原创文章 · 获赞 141 · 访问量 28万+

猜你喜欢

转载自blog.csdn.net/wq6ylg08/article/details/103439453
今日推荐