• 数据结构分为逻辑结构和存储结构
  • 逻辑结构与数据的存储没有关系,是独立于计算机的,是从具体问题抽象出来的数学模型。
  • 存储结构只有顺序存储结构和链式存储结构。

1:栈

 顺序栈 (top用来存放栈顶元素的下标)判断栈S空:如果S->top==-1表示栈空。判断栈S满:如果S->top==Stack_Size-1表示栈满。链栈(top为栈顶指针,指向当前栈顶元素前面的头结点)判断栈空:如果top->next==NULL表示栈空。判断栈满:当系统没有可用空间时,申请不到空间存放要进栈的元素,此时栈满。

2:队列

实际在用的时候采用循环队列节约空间,因为初始化时Q.front == Q.rear,所以当有元素进队的时候,rear会++,所以rear会一直指向最后一个元素的下一个位置

 队空当队头和队尾指针在同一位置时,队空。 Q.front == Q.rear;
队满队头指针在队尾指针的下一位置时,队满。 Q.front == (Q.rear + 1) % MAXSIZE 因为队头指针可能又重新从0位置开始,而此时队尾指针是MAXSIZE - 1,所以需要求余。

3:数

数中最常用的是二叉树,二叉树中应用最广的是哈夫曼树,又称最优树层次:根为第一层,最大层为树的高度,深度为根到该节点的路径长度;高度为叶节点到该节点最大路径二叉树三大性质:
1. 在第i层上最多有2的K-1次方个结点
2. 在深度为K的二叉树最多有2的K次方-1个结点
3. 叶子结点数等于度为2的结点数+1

压缩技术的核心思想是频率高的字符采用断点的编码,频率低的字符可以采用稍长的编码,如何设计有效的用于数据压缩的二进制编码呢,无效的编码就是,此字符的编码不能是其他字符编码的前缀,此时可以用到哈夫曼树

树的路径长度则为从根结点出发到每一个叶结点的路径长度总和。树的带权路径长度则是从根结点出发到每一个叶节点的带权路径长度总和,叫做WPL。哈夫曼树拥有最小的树的带权路径长度,其每个叶节点包含字符信息

如何构造最短的带权路径长度(哈夫曼树)呢,这就需要用到哈夫曼树构造算法

关于构造过程中的存储结构HT的初始状态和终结状态如下图。
注意点:终结装太中的parent的值是对应的结点i的值

数据结构中存储结构分析相关推荐

  1. 数据结构中存储和存取的区别

    复习数据结构的时候遇到了这两个词,就想着记录一下,因为我起初有点混淆了emmm-- 一.存取结构 存取偏向于"取". 存取结构分为顺序存取和随机存取. *顺序存取:不能通过下标访问 ...

  2. 校园导游图C语言数据结构,用C语言和数据结构中的无向图存储结构编一个校园导游图完全的程序代码.docx...

    用C语言和数据结构中的无向图存储结构编一个校园导游图完全的程序代码.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下 ...

  3. 一个完整的c语言程序结构图,用C语言和数据结构中的无向图存储结构编一个校园导游图完全的程序代码.docx...

    用C语言和数据结构中的无向图存储结构编一个校园导游图完全的程序代码 #define Infinity 1000 #define MaxVertexNum 35 #define MAX 40 #incl ...

  4. 图解:数据结构中的6种「树」,柠檬问你心中有数吗?

    数据结构这门课程是计算机相关专业的基础课,数据结构指的是数据在计算机中的存储.组织方式. 我们在学习数据结构时候,会遇到各种各样的基础数据结构,比如堆栈.队列.数组.链表.树...这些基本的数据结构类 ...

  5. 数据结构中常见的树(BST二叉搜索树、AVL平衡二叉树、RBT红黑树、B-树、B+树、B*树)

    原文:http://blog.csdn.net/sup_heaven/article/details/39313731 数据结构中常见的树(BST二叉搜索树.AVL平衡二叉树.RBT红黑树.B-树.B ...

  6. 数据结构——数据结构中的数据表示

    1,本文介绍数据的概念,以便讨论数据结构究竟是什么: 2,程序设计的挑战: 1,利用计算机解决现实生活中的问题: 1,计算机顾名思义是其诞生的时候仅仅是给科学家使用,科学家用计算机进行计算: 2,这是 ...

  7. linux接收网络数据并存存储,linux网络数据包数据结构 Socket Buffer

    Linux网络核心数据结构是套接字缓存(socket buffer),简称skb.它代表一个要发送或处理的报文,并贯穿于整个协议栈.1.套接字缓存skb由两部分组成:(1)报文数据:它保存了实际在网络 ...

  8. [数据结构]数据结构中各种树

    阅读目录 1. 二叉树 2. 二叉查找树 3. 平衡二叉树 3.1 平衡查找树之AVL树 3.2 平衡二叉树之红黑树 4. B树 5. B+树 6. B*树 7. Trie树 数据结构中有很多树的结构 ...

  9. 初始化栈的代码_数据结构中的栈,你知道多少?

    由于栈比较简单,也很容易理解,学过的人都知道一句话就可以描述栈的特性:后进先出.所以这篇文章主要是写如何使用代码来描述栈,当然也是让大家很容易理解的语言.还是先给出这篇文章的大致脉络. 首先,对栈有一 ...

  10. 数据结构中的各种排序---总结篇

    转载:http://blog.csdn.net/wzyhb123456789/article/details/5974790 一个月没有写文章,原因是一直在忙碌着,但是其实是有收获的,下面就是我这前半 ...

最新文章

  1. pyqt制作电子钟表
  2. 烂泥:【解决】VMware Workstation中安装ESXI5.0双网卡问题
  3. 事件触发控制_前端性能优化:事件的节流throttle与防抖debounce
  4. 60.Java 代码编译和执行的整个过程
  5. 2017年10月21日23:43:02
  6. matlab实现2dpsk调制与解调,(完整版)matlab设计2DPSK信号调制与解调
  7. java opencv 基本操作4
  8. EXCEL:转换人民币大写
  9. ubuntu16.04 将火狐浏览器语言设置成中文
  10. 图画日记怎么画_图画日记
  11. 嵌入式软件工程师学习规划
  12. C++那些事之ADL
  13. CMD 隐藏窗口运行
  14. 2020东三省数学建模A题
  15. 记一次计算机课作文,记一次课堂活动作文500字
  16. linux kde磁盘扫描,在KDE桌面中使用Krusader进行更好的文件管理 | MOS86
  17. 如何用切片工具做html网页,ps中的切片工具怎么用,怎么将html文本添加到切片...
  18. OVN Southbound DB简介及其相关命令示例
  19. 复试编程训练真题——C语言,统计各单词(字符)出现的次数,并将各单词(字符)和其出现的次数输出到屏幕和文件中
  20. 关于win10应用商店打不开,win10应用商店明明连接网络确提示无网络连接,代码: 0x80131500

热门文章

  1. 软件工程学习笔记——软件开发模型
  2. 2008服务器系统usb驱动,给Windows server 2008 r2系统镜像装载usb3.0驱动
  3. Windows 10 删除微软拼音
  4. 搜索习题-传教士与野人问题
  5. 读书、学习是为了让我们成为更出色的人同时做自己喜欢的事
  6. catia二次开发c语言,CATIA二次开发1_VB语言基础语法
  7. 计算机专业要考哪些证书?这5种证书含金量最高,拿到就是高薪
  8. 壬戌立冬十朋十一日陪路文周朋携提祖同访后 [宋] 王洋
  9. 给加西亚的信——余世维——赢在执行
  10. 三角函数积化和差公式