摘要: 哈夫曼树(Huffman Tree)带权路径长度(WPL):设二叉树有n个叶子结点,每个叶子结点带有权值Wk,从根节点到每个叶子结点的长度为Lk,则每个叶子结点带权路径长度之和就是(wk* Lk)求和最优二叉树或哈夫曼树:WPL最小的二叉树 哈夫曼树的构造:每次把权值最小的两棵二叉树合并 哈夫曼树的 阅读全文
posted @ 2018-08-27 16:59 Lucky小黄人^_^ 阅读(1495) 评论(0) 推荐(0)
摘要: 简化版: 阅读全文
posted @ 2018-08-27 16:56 Lucky小黄人^_^ 阅读(1132) 评论(0) 推荐(0)
摘要: 1 //用邻接表表示图 2 #include 3 #include 4 5 #define DataType char 6 #define MaxVertexNum 20 7 #define Vertex int 8 #define WeightType int 9 typedef struct GNode *PtrToGNode; 10 struct GNode 1... 阅读全文
posted @ 2018-08-27 16:55 Lucky小黄人^_^ 阅读(676) 评论(0) 推荐(0)
摘要: 简单排序(前三种就是简单排序)void X_sort(ElementType A[ ], int N)1.大多数情况下,为简单期间,讨论从小到大的整数排序2.N是正整数3.只讨论基于比较的排序(> = <有定义)4.只讨论内部排序5.稳定性:任意两个相等的数据,排序前后的相对位置不发生改变6.没有一 阅读全文
posted @ 2018-08-27 16:51 Lucky小黄人^_^ 阅读(175) 评论(0) 推荐(0)
摘要: //用邻接矩阵表示图#include #include #define MaxVertexNum 20typedef int WeightType;typedef char DataType;typedef st... 阅读全文
posted @ 2018-08-26 09:35 Lucky小黄人^_^ 阅读(282) 评论(0) 推荐(0)
摘要: //用邻接表表示图#include #include #define DataType char#define MaxVertexNum 20#define Vertex int#define WeightTyp... 阅读全文
posted @ 2018-08-26 09:32 Lucky小黄人^_^ 阅读(271) 评论(0) 推荐(0)
摘要: 以指针作为实参时,实参p传递给形参p1的其实是p的拷贝,所以在局部函数中改变形参p1的指向对身处主函数的p是无影响的,但是因为p1是p的拷贝,所以他们的指向是相同的,所以可以通过p1修改了那块内存的值。如果实参p... 阅读全文
posted @ 2018-08-25 20:40 Lucky小黄人^_^ 阅读(170) 评论(0) 推荐(0)
摘要: 图(graph):表示“多对多”的关系六度空间理论(Six Degrees Separation)包含:1.一组顶点:通常用V(Vertex)表示顶点集合2.一组边:通常用E(edge)表示边的集合 边是顶点对:(v, w) 属于E, v , w 属于V 有向边<v, w>表示v 指向w的边(单行线 阅读全文
posted @ 2018-08-25 20:36 Lucky小黄人^_^ 阅读(940) 评论(0) 推荐(0)
摘要: 集合的表示:1.集合运算:交、并、补、差,判定里两个元素是否属于某一个集合2.并查集:集合并、查某元素属于什么集合3.并查集可以用树结构表示,树的每个结点表示一个集合元素双亲表示法:(孩子指向双亲)这个树结构采用数组存储形式:数组每个元素的类型描述为: 集合运算(下面的完整代码中用简化版的查,并运算 阅读全文
posted @ 2018-08-24 18:26 Lucky小黄人^_^ 阅读(519) 评论(0) 推荐(0)
摘要: 二叉树遍历的本质是怎么样把一个二维结构变成一个一维的线性序列的过程核心问题:二维结构的线性化从结点访问其左右儿子结点访问左儿子后,右儿子结点怎么办?需要一个寻出结构保存咱叔不访问的结点存储结构:堆栈、队列 队列实现:遍历从根节点开始,首先将根节点入队,然后开始执行循环:结点出队、访问该结点、其左右儿 阅读全文
posted @ 2018-08-24 09:48 Lucky小黄人^_^ 阅读(201) 评论(0) 推荐(0)