计算机的数据结构的理解

  1. 什么是数据结构?

    逻辑结构: ADT=(V,R)          V:表示顶点结合    R    表示数据元素与数据元素之间的关系。

    数据结构其实将

    ==>结点对应到

  2. 结点对应到内存地址。
  3. 什么是逻辑结构?

    数据元素与数据元素之间的关系,比如DNA分子双螺旋结构,它们的元素之间是纵横交错的。数据结构中有四种数据结构:分为两大类,就是线性结构和非线性结构(其实数学好多都是研究线性问题和非线性问题)。分为三大类,就是线性表,树,图。分为四大类,线性表,树,图,集合。

  4. 什么是物理结构?

    物理结构研究的是物理的数据存取。就是内存和外存取如何存数据,以及如何取出数据。

    物理结构在计算机中有四种,分别为顺序,链接,索引,散列。

    顺序:以数组为例,通过下标分别去存数据,去取数据。o(1)

    链接:以指针为代表的,通过存储下个结点的地址,来实现下一个结点的存数据和取数据。o(n)

    索引:根据索引表,来实现索引与元素之间的地址对应关系,实现修改。o(1)

    散列:是索引的扩展,通过关键字来表达与元素地址之间的对应的关系。o(1)

    顺序,链接,散列是数据结构中的内存存储,索引研究的是在外存上,如数据库。

  5. 结点可以是关键字,则对应的内存中的地址就是内存,使用的映射关系就是散列。

    结点可以是索引号,则对应的内存中的地址就是内存,使用的索引映射,如查找中线性索引,B+,B—树,这些研究都是在外存中。

    结点可以是数据本身,则对应的内存中的地址就是内存,使用的映射关系就是顺序访问

    结点可以是数据元素,则对应的内存中的地址就是内存,使用的映射关系就是链表。

时间: 2024-11-12 03:36:19

计算机的数据结构的理解的相关文章

那些让你对计算机有更深理解的基础知识

本文着重介绍计算机基础知识,知道这些知识后,会让你对计算机有更深的理解. 信息的表示和处理 计算机如何表示整数:有符号数和无符号数,尤其是如何用补码表示负数,数字的取值范围. 计算机如何表示浮点数,为什么小数的二进制表示法只能近似表示十进制小数. 数值的转换.移位 这几点非常重要,因为几乎所有的编程语言都有数据类型,而最基本数据类型必然包括整数和浮点数. 搞不清这些表示和运算,在编程中就会遇到一些稀奇古怪的问题. 从汇编层面理解程序的执行 顺序.分支.循环.函数调用.数组.结构体等在汇编层面是怎

计算机内存模型 粗浅理解

对于计算机内存模型,我认为可按 数组 模型进行类比.将计算机的内存结构等同于 数组 存储结构(其实这里反过来才是正确的,数组存储的模型是依照计算机的内存模型进行存储的,但这里为了更容易理解,就将其反过来思考). 一般而言,对于不同的机器,其内存高低字节存储位置可能不同,这就是所谓的大端小端.这也给我们的理解带来困惑. 而在我的机器上,我测试出来的结果是:以竖直内存模型分析,低地址在上,高地址在下方. 验证程序: #include "stdafx.h" #include <iost

02,计算机组成与操作系统的理解、对程序的理解、OS发展史 以及 一些杂项

这里马哥讲了好多,能听懂,但需要记得东西好少,不过我还是 按照 我 对 计算机 的 理解 画了 一张 图, 不一定 准确 , 但是 差不多 把, 计算机 底层 是 由 运算器.控制器.存储器.输入设备.输出设备 这 五大部件 组成 的 其中 运算器 和 控制器 是 在 cpu 中 的, 运算器 是 负责 计算 的, 控制器 是 负责 控制 程序 流程 的,也 负责 控制 存储器 中 的 数据, 北桥 是 一个 高速 I/O 设备, 他 通常 用来 连接 内存,硬盘,显卡 等 需要 高速 I/O

对计算机领域中间层的理解

以前看<代码大全2>时看到了如下一句经典台词: "any problem in computer science can be sloved by another layer of indirecition" "计算机科学领域的任何问题都可以通过增加一个中间层来解决" 当时只是觉得好就永远记住了,几年的编码经验,越来越感受到这句话的经典所在,下面来举几个例子说一下我对它的理解: 1.操作系统的缓存: 比较典型的用于阐述这句话的缓存实例,当属内存(包括sw

计算机中的contex理解

原文链接  https://www.xuebuyuan.com/2016635.html 1.其实简单的说就是跟当前主题有关的所有内容. 2.如说到程序的上下文,就是当前这段程序之上和之下的程序段.因为有些变量.函数不一定都定义在一起,而且一个程序段不是一行就能写完,之间有有很多的联系.就像看英语阅读或者小说等都需要前后理解的. 3.而"设备上下文"(the device context):是一种包含有关某个设备(如显示器或打印机)的绘制属性信息的Windows数据结构.所有绘制调用都

计算机工作过程的理解

朱秀秀 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 通过视频的学习,认识到计算机工作的过程跟我们读使用高级语言编写的代码流程基本上是一致的,只不过计算机不能识别高级语言,只能识别像汇编语言.二进制代码等低等语言,其中了解到汇编语言实际上是对二进制代码的符号表示,汇编语言更贴近底层技术. 计算机在执行用高级语言编写的代码的时候,首先要通过便已将其变为计算机可以识别的汇编语言,进

关于计算机知识的基本理解

本人是个大一的学生,比较热爱计算机,有人说过,最好的学习方式就是整理,并形成体系,那么我就把我现在所学的知识整理一下. 1. 最初计算机的模型应该是图灵所提出来的,艾伦.图灵.其模型叫做:图灵机.他的图灵机的模型是:只有数据储存在储存器中,而程序的实现是通过一系列的开关或配线来实现的. (图为图灵机模型) 简单的介绍一下:程序是告诉计算机如何去处理输入的一组数据的指令集合.而输出的结果取决于,输入的数据和程序. 例如:输入2.3.,而程序是相加,那么结果就会等于5.假设说数据不变,改变程序为相乘

ES6学习总结之Set和Map数据结构的理解

前言 当我们需要存储一些数据的时候,首先想到的是定义一个变量用来存储,之后我们可能学了数组,发现数组比变量可以存储更多的数据,接着可能有其它的存储数据的方法等等,然而我今天需要介绍的是在ES6中比较常见使用的数据类型结构,Set和Map. Set数据结构 1.Set简介 set中成员的值都是唯一的,没有重复的值 向set中添加成员时,不会发生类型转换 向set中添加的对象总是不想等 2.常用的属性和方法 size:返回set实例的成员总数 add():添加某个值,返回set本身 delete()

计算机内部存储关系理解

CPU-CPU内的寄存器--高速缓存器SRAM--内存DRAM---磁盘 处理速度-高 高 偏高 中 低 偏低 CPU 寄存器 高速缓存区 内存 磁盘 光盘.U盘,其他储存器 储存空间- kb Mb Gb 500Gb Tb CPU:中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit).它的功能主要是解释计算机指令以及处理计算机软件中的数据. 中央处理器主要包括运算器(算术逻辑运算单