有向无环图图文讲解 一、定义边有向,无环。英文名叫DirectedAcyclicGraph,缩写是DAG。一个无环的有向图称做有向无环图。在图论中,如果一个有向图无法从某个顶点出发经过若干条边回到该点,则这个图是一个有向无环图(DAG图)。因为有向图中一个点经过两种路线到达另一个点未必形成环, 图论 2022年03月20日 154 点赞 0 评论 84717 浏览
解析字符串哈希(Hash) 说到什么是字符串哈希(Hash)?很多人都会疑惑,我们可以这么理解,定义一个把字符串映射到整数的函数f,这个f称为是Hash函数。而我们希望这个函数f可以方便地帮我们判断两个字符串是否相等。(1)Hash的思想Hash的核心思想在于,将输入映射到一个值域较小、可以方便比较的范围。 字符串相关 2022年01月18日 68 点赞 0 评论 100546 浏览
前缀和理解与应用 本篇内容主要学习前缀和与其应用。一、前缀和概念前缀和是指某序列的前n项和,可以把它理解为数学上的数列的前n项和,而差分可以看成前缀和的逆运算。合理的使用前缀和与差分,可以将某些复杂的问题简单化。简单来说:我们有一个数组x和它的前缀和数组y,他们满足以下公式。 算法基础 2022年04月23日 153 点赞 0 评论 85444 浏览
字符串的KMP算法详解及C/C++代码实现 1.原由紧接上文,我们知道了暴力匹配的算法在时间运行上的缺陷,假设字符串T的长度为n,字符串P的长度为m,则整个算法的时间复杂度为O(n*m),而对于一个复杂的现实情况而言n>>m>>2(即n远远大于m,m远远大于常数),这样的计算计算机的负担很重。 串、数组、矩阵和广义表 2022年02月07日 249 点赞 0 评论 126807 浏览
什么是弦图? 什么是弦图?下面的图我们看到后,第一感觉应该虽然看着很酷炫,但是会感觉很复杂,感觉无所适从,不知怎么来看这个图表。今天我们就来介绍下这个图表是怎么用的?这个图表叫做弦图,弦图主要用于展示多个对象之间的关系,连接圆上任意两点的线段叫做弦,弦(两点之间的连线)就代表着两者之间的关联关系。 图论 2022年01月18日 231 点赞 0 评论 115950 浏览
C++STL之List容器 1.再谈链表List链表的概念再度出现了,作为线性表的一员,C++的STL提供了快速进行构建的方法,为此,在前文的基础上通过STL进行直接使用,这对于程序设计中快速构建原型是相当有必要的,这里的STL链表是单链表的形式。2.头文件头文件:#include<list>3.初始化格式为:explicitl C++STL库教程(附带题库) 2022年01月24日 137 点赞 0 评论 112707 浏览
动态查找-平衡二叉树 1.简介平衡二叉树(BalancedBinaryTree)具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。平衡二叉树的常用实现方法有红黑树、AVL、替罪羊树、Treap、伸展树等。其中最为经典当属AVL树, 查找算法 2022年03月05日 204 点赞 0 评论 107853 浏览
什么是Lyndon分解? 我们定义一个串是Lyndon串,当且仅当这个串的最小后缀就是这个串本身。该命题等价于这个串是它的所有循环表示中字典序最小的。引理1:如果u和v都是Lyndon串并且u<v,则uv也是Lyndon串。证明:1、若len(u)≥len(v)这时, 字符串相关 2022年02月28日 69 点赞 0 评论 85292 浏览
简述随机增量法 随机增量算法是计算几何的一个重要算法,它对理论知识要求不高,算法时间复杂度低,应用范围广大。增量法(IncrementalAlgorithm)的思想与第一数学归纳法类似,它的本质是将一个问题化为规模刚好小一层的子问题。解决子问题后加入当前的对象。 计算几何 2022年04月05日 217 点赞 0 评论 89241 浏览
什么是树上随机游走? 什么是树上随机游走?我们可以假设给定一棵树,树的某个结点上有一个硬币,在某一时刻硬币会等概率地移动到邻接结点上,问硬币移动到邻接结点上的期望距离。1.树上随机游走用到的定义:●所讨论的树●结点的度数●结点与v结点之间的边的边权●结点的父结点●结点的子结点集合●结点的兄弟结点集合2.向父结点走的期望距离 图论 2022年03月22日 88 点赞 0 评论 65711 浏览