数据结构
文章平均质量分 95
pikachues
这个作者很懒,什么都没留下…
展开
-
双向链表
单向链表缺点分析1)单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找。2) 单向链表不能自我删除,需要靠辅助节点,而双向链表,则可以自我删除,所以前面我们单链表删除时节点,总是找到temp,temp是待删除节点的前一个节点。.举例使用带 head头的单向链表实现-水浒英雄排行榜管理完成对英雄人物的增删改查操作。实现定义节点/** * 定义节点 */cla...原创 2019-10-27 22:20:57 · 111 阅读 · 0 评论 -
链表
1.链表介绍链表是有序的存储列表,但是他在内存中的存储结构如下:小结上图:1) 链表是以节点的方式来存储,是链式存储2)每个节点包含data域,next域:指向下一个节点.3)如图:发现链表的各个节点不一定是连续存储.4)链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单链表(带头结点)逻辑结构示意图如下2.单链表应用实例使用带 head头的单向链表实现-水浒英...原创 2019-10-27 22:10:53 · 127 阅读 · 0 评论 -
循环队列
1.问题对于普通队列而言,数组不能重复使用,这样就造成了空间浪费。怎样才能使队列能够重复利用呢?将队列改成一个环形的,这样就可以重复利用了。2.分析实现分析front 变量的含义做一个调整: front 就指向队列的第一个元素, 也就是说 arr[front] 就是队列的第一个元素front 的初始值 = 0rear 变量的含义做一个调整:rear 指向队列的最后一个元素的后一个...原创 2019-10-26 17:00:36 · 152 阅读 · 0 评论 -
普通队列
1.介绍1)队列是一个有序列表,可以用数组或是链表来实现。2)遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出举例我们在车站排队取票就是一种队列,排在前面的先取到票,排在后面的后取到票2.数组模拟队列思路队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图,其中maxSize是该队列的最大容量。因为队列的输出、输入是分别从前后端来处...原创 2019-10-26 16:40:47 · 563 阅读 · 0 评论 -
稀疏数组
1.背景在五子棋程序中有存盘和持续上盘的功能,如图问题:因为使用二维数组的时候有很作默认值是0,因此记录了很多没有意义的数据。怎么才能使存放的数据都是有意义的数而又能不浪费空间呢?使用稀疏数组。2.基本介绍当一个数组中大部分是0,或者为同一个数组时,可以使用稀疏数组来保存该数组。处理方法1)记录数组一共有几行几列,有多少个有效的值2)把具有不同值的元素的行列及值记录在一个小...原创 2019-10-26 15:41:04 · 122 阅读 · 0 评论 -
二叉树的基础算法
我们这里以 A B C # E # E # # # # 为例1.二叉树的创建BTNode * CreatTree() ...原创 2018-04-10 14:07:38 · 238 阅读 · 0 评论