Data Structure
文章平均质量分 82
Anpedestrian
这个作者很懒,什么都没留下…
展开
-
C++之二叉树的创建、查找、四种次序的周游遍历方法以及内存的释放
数据结构的学习心得,还有很多不足之处。。希望看到的大神们能够给出宝贵的修改意见。以下为运行结果前序优先次序周游:5 0 1 2 3 4 5 6 7 8 9改进后的前序优先次序周游:5 0 1 2 3 4 5 6 7 8 9中序优先次序周游:0 1 2 3 4 5 5 6 7 8 9后序优先次序周游:5 4原创 2016-09-11 22:51:37 · 811 阅读 · 0 评论 -
静态表查找和二分法静态表查找
简单的操作。。不解释#include #include #include #include #include #include #include #include #include #include #include #define INF 0x3f3f3f3f#define mem(a,b) memset(a,b,sizeof(a));#define For原创 2016-12-18 16:32:32 · 303 阅读 · 0 评论 -
数据结构之"逆波兰树"求解算式 [a + b * (c - d) - e / f]
逆波兰树加引号是因为这是我给她起的名字。。莫名喜感。一个算式的”波兰树“的构建并不是唯一的,这个得看个人的选择,选择括号外面的加号或减号作为树根。然后将剩下的算式依次拆分。将算术符号用子二叉树的根节点代替,数值用二叉树的左右子节点代替,这样就得到了一棵所求算式的波兰树,然后将其变化为扩充二叉树,得出她的前序遍历序列。然后通过一个创建波兰树的函数 Get_bolantree();,从而得到一个由原创 2016-10-28 17:07:49 · 2026 阅读 · 0 评论 -
数据结构之最小生成树的Prim和Kruskal`s 算法
最小生成树的Prim和Kruskal算法的主要思想就是依据最小生成树的MST性质。MST性质大体来说就是在Graph中的点中选出一个点,也可以当作是一个集合U,所有点的集合的则被当作是V集合。然后所要求的树中满足的点就在V-U中取得。。说起来是比较抽象的,其实当时我也不是很懂,在看了一些例子和代码之后才弄明白的。代码中讲解的比较详细,去看一下代码理解一下MST性质吧。。有不懂得的地方可以在下面评论原创 2016-09-28 18:42:14 · 579 阅读 · 0 评论 -
数据结构之哈夫曼树的构造以及对哈夫曼树求解带权最优外部路径长度
哈夫曼树也叫做最优二叉树。。如果扩充二叉树的外部节点都带有一定的权值,可将外部路径长度这一概念加以推广。设扩充二叉树具有m个带权值的外部节点,那么从根节点到各个外部节点的路径长度与相应结点权值的乘积的和,叫做扩充二叉树的带权的外部路径长度。。记作WPL。。。(摘抄自算法与数据结构课本)。而关于哈夫曼树的应用,有哈夫曼编码与二路归并排序。。哈夫曼编码就是比如说要用二进制编译一段文字编码。。所以就原创 2016-09-21 22:57:45 · 2985 阅读 · 0 评论 -
数据结构之拓扑排序
感觉重点就是邻接表的创建和tp(topoSort()函数中的一个变量)的变化很奇妙,相当于是一个静态指针的用法。#include #include #include #include #include #include #include #include #include #define INF 0x3f3f3f3f#define mem(a,b) memset(a原创 2016-10-09 22:33:53 · 440 阅读 · 0 评论 -
C语言之数据结构的顺序单链表创建,插入和删除操作
数据结构上机课时敲的。。之前用C++实现过简单的三元组,,但没有用C语言实现。所以试了试,课本上的参数传递都是用的引用的形式,而如果要用C语言实现的话就都需要改为指针传递的形式。下面有一个重点就是删除过程中需要返回所删除的元素的数值。。用指针类型传递过程中有点盲区,,,还望有看到的同志帮忙讲解一下。#include #include #include #include #include原创 2016-09-18 22:47:01 · 1209 阅读 · 0 评论 -
抽象数据类型 Triplet 的表示和实现
#include #include #include #include #include #include #include #include #include #define INF 0x3f3f3f3#define ll long longusing namespace std;typedef int Status;typedef int * Triplet;Sta原创 2016-08-31 21:06:07 · 1041 阅读 · 0 评论 -
数据结构之最短路径的 Dijkstra Algorithm && Floyd Algorithm
没有什么说的。代码中讲解的应该还算明确。但是我想说的是一定要把最短路径和最小生成树给分开。。最小生成树是求一个Graph(这个图中必定是全部联通图)中,求解所有子树中所有路径之和最小的子树。。而最短路径则求Graph中是从一个点到另一个点路径之和最短的路径。这完全是两个问题。。没有任何联系!#include #include #include #include #inclu原创 2016-10-08 21:26:21 · 254 阅读 · 0 评论