图论
文章平均质量分 92
PD我是你的真爱粉
东财金融在读
展开
-
哈夫曼树python实现
HuffmanTree的python实现 – 潘登同学的图论笔记文章目录HuffmanTree的python实现 -- 潘登同学的图论笔记哈夫曼树构建哈夫曼树的过程树节点实现HuffmanTree实现绘制HuffmanTree测试代码哈夫曼树当用 n 个结点(都做叶子结点且都有各自的权值)试图构建一棵树时,如果构建的这棵树的带权路径长度最小,称这棵树为“最优二叉树”,在构建哈弗曼树时,要使树的带权路径长度最小,只需要遵循一个原则,那就是:权重越大的结点离树根越近。在图 1 中,因为结点 a 的权值最原创 2022-04-10 20:09:03 · 2390 阅读 · 7 评论 -
红黑树详细笔记
红黑树、2-3-4树 – 潘登同学的图论笔记文章目录红黑树、2-3-4树 -- 潘登同学的图论笔记2-3-4树红黑树红黑树与2-3-4树的对应关系红黑树节点红黑树红黑树的插入操作测试代码红黑树的删除测试红黑树删除2-3-4树红黑树是2-3-4树的一种实现形式,只是2-3-4树的编程不太好写,但是2-3-4树的思想还是比较简洁明了滴…2-3-4树是四阶的balance tree,他属于一种多叉查找树有如下要求1.所有叶子节点都拥有相同的深度2.节点只能是2-节点,3-节点,4-节点之一3.原创 2022-02-07 17:15:59 · 979 阅读 · 0 评论 -
字典树trie树
字典树trie树 – 潘登同学的图论笔记文章目录字典树trie树 -- 潘登同学的图论笔记trie树的作用trie树节点常规操作遍历操作联想操作一些简单的测试用例实战 -- LeetCodeTrie树,又叫字典树、前缀树(Prefix Tree)、单词查找树,是一种多叉树结构。trie树的作用Trie树的核心思想是空间换时间,利用字符串的公共前缀来减少无谓的字符串比较以达到提高查询效率的目的。核心应用字符串检索词频统计字符串排序前缀匹配(搜索联想,不知道element-ui中的auto原创 2022-02-05 23:34:43 · 908 阅读 · 0 评论 -
最小支撑树(下)
最小支撑树(下) – 潘登同学的图论笔记文章目录最小支撑树(下) -- 潘登同学的图论笔记破圈法(Ⅰ)算法实现破圈法(Ⅱ)算法实现博鲁夫卡算法算法实现最小瓶颈支撑树斯坦纳树书接上文,上一篇我们写了Prim算法与Kruskal算法,接下来把剩下的算法解决掉破圈法(Ⅰ)输入: 赋权简单图GGG输出: GGG的最小支撑树 T=(VT,ET)T=(V_T, E_T)T=(VT,ET)算法思路:每一步都删除权值最大而且不必要的边(出现在回路中的边),直到边数=顶点数-11.把图G的边权值按不增原创 2021-12-09 22:16:56 · 594 阅读 · 0 评论 -
树的数据结构、最小支撑树(上)
树的数据结构、最小支撑树(上) – 潘登同学的图论笔记文章目录树的数据结构、最小支撑树(上) -- 潘登同学的图论笔记无向树二叉树森林无向树理论部分无向树的等价定义支撑树最小支撑树构造最小生成树的算法Prim算法算法实现Kruskal算法无向树定义树是连通且不含有任何简单回路的无向图树中度数为1的顶点称为叶子,度数大于1的顶点称为分支点;注:一阶简单图k也是树树必定不包含重边和自环,树一定是简单图既然树是简单图,那么直接把图的数据结构拿过来用就行二叉树重点要介绍的是二叉树,二叉原创 2021-12-08 14:35:15 · 1201 阅读 · 0 评论 -
图论学习加餐部分
加餐部分 – 潘登同学的图论笔记文章目录加餐部分 -- 潘登同学的图论笔记加餐第一题: 骑士周游问题DFS实现加餐第二题: 词梯问题BFS实现加餐第三题: 强连通分支(kosaraju算法)加餐第四题: 图的最短路径算法(Dijkstra算法)+ prim最小生成树写在最后加餐第一题: 骑士周游问题DFS实现题目:考虑国际象棋棋盘上某个位置的一只马,它是否可能只走63步,正好走过除起点外的其他63个位置各一次?如果有一种这样的走法,则称所走的这条路线为一条马的周游路线。试设计一个算法找出这样一原创 2021-12-06 17:17:28 · 377 阅读 · 0 评论 -
网络与流--图论笔记
网络与流 – 潘登同学的图论笔记文章目录网络与流 -- 潘登同学的图论笔记(算法)Ford-Fulkerson(G) (最大流最小割算法)网络与流假设G=(V,E)G=(V,E)G=(V,E)是一个连通无重边且不包含自环的有向图,如果G中(1)只有一个入度为0的顶点,记之作为s,称为源(2)只有一个出度为0的顶点,记之作为t,称为汇(3)每条有向边e=(u,v)e=(u,v)e=(u,v)都存在一个非负权值CuvC_{uv}Cuv,称作边的容量则称G是一个网络或流网络,也记作G=(V,原创 2021-12-06 17:15:47 · 296 阅读 · 0 评论 -
图的着色--图论笔记
图的着色 – 潘登同学的图论笔记文章目录图的着色 -- 潘登同学的图论笔记图的着色对简单图G的每个顶点赋予一种颜色使得相邻的顶点颜色不同,称图G的一种点着色。对简单图G进行点着色所需的最少颜色数称为G的点色数,记为χ(G)χ(G)χ(G)(注:对于n阶简单图,显然有χ(G)≤nχ(G)≤nχ(G)≤n)边着色对简单图G的每条边赋予一种颜色,使得相邻边颜色不同,称为图G的一种边着色面着色对无桥平面图图G的每个面赋予一种颜色,使得相邻的面颜色不同,称为图G的一种面着色(原创 2021-12-06 17:14:03 · 1113 阅读 · 0 评论 -
图的匹配---图论笔记
图的匹配 – 潘登同学的图论笔记文章目录图的匹配 -- 潘登同学的图论笔记独立数和支配数的关系匹配边覆盖`柯尼希给出:二部图中匹配数和最小点覆盖数的相等关系`二部图的匹配顶点支配,独立与覆盖 (前提假设,G是没有孤立顶点的简单图)设G=(V,E)G = (V,E)G=(V,E)是无向简单图, D⊆VD⊆VD⊆V, 若对于任意 v∈V−Dv∈V-Dv∈V−D,都存在u∈Du∈Du∈D,使得uv∈Euv∈Euv∈E,则称D为一个支配集若D是图G的支配集,且D的任何真子集都不再是支配集,则称D为一原创 2021-12-06 17:12:18 · 4041 阅读 · 0 评论 -
图的分类--图论笔记
图的分类 – 潘登同学的图论笔记文章目录图的分类 -- 潘登同学的图论笔记无向图(我们着重讨论简单图)图的数学语言简单图:不存在自环和重边的无向图在简单图范畴下的其他有特点的图二部图(很经典)有向图图的同构与子图构造子图的几种方法道路、回路与连通性欧拉图`(算法)`构造欧拉回路 Fleury(G)哈密顿图**科学家排座问题**平面图无向图(我们着重讨论简单图)图的数学语言根据前面数据结构的引入, 我们可以清楚的知道:图的由顶点, 边组成;贯彻集合论的思想, 将点写成一个点集V, 边写成一个边集E原创 2021-12-06 17:10:37 · 1334 阅读 · 0 评论 -
图的数据结构
图的数据结构 – 潘登同学的图论笔记文章目录图的数据结构 -- 潘登同学的图论笔记节点数据结构图数据结构话不多说 上代码!图的邻接表` 简化起见 `图的邻接矩阵节点数据结构在数据结构中我们可以知道,图由节点和边构成,那么想实现图的数据结构就必然离不开节点Node,为了避免混淆,我的节点同一命名为Vertex;那么实现Vertex需要一些什么属性和方法呢?节点的名称节点的与什么节点连接以及连接的权值增加相邻节点(或者叫修改相邻节点的边权值)获得相邻节点(就是通过这个节点知道他的相邻节点是什么原创 2021-12-06 17:00:29 · 332 阅读 · 0 评论