算法

C++的区别

C++的区别1.从C语言到C++1980年,BjarneStroustrup博士着手创建一种新的语言,能够具有面向对象的程序设计特色。在当时,面向对象编程是一个新颖的概念,Stroustrup博士并不是从头开始设……

离散化算法实例讲解

离散化算法实例讲解说到离散化,可能很多人不知道这是什么,小编简单给大家介绍一下,后面会详细说明,离散化是程序设计中一个常用的技巧,它可以有效的降低时间复杂度。其基本思想就是在众多可能的情况中,只考虑需要用的值。离散化可……

图论中的有向无环图

图论中的有向无环图在图论中,如果一个有向图从任意顶点出发无法经过若干条边回到该点,则这个图是一个有向无环图(DAG图)。因为有向图中一个点经过两种路线到达另一个点未必形成环,因此有向无环图未必能转化成树,但任何有向树均……

栈的定义和特点

栈的定义和特点数据结构的重要部分,栈,栈是OI中常用的一种线性数据结构,请注意,本文主要讲的是栈这种数据结构,而非程序运行时的系统栈/栈空间,大家一定要弄清晰,别混淆了。栈的定义和特点栈(stack)是一个特殊的线……

深入分析算法的复杂度

深入分析算法的复杂度在系统分析算法的复杂度之前,我们先了解什么是算法?算法是指用来操作处理数据、解决程序问题的一组方法。但是对于同一个问题,我们去使用不同的算法,结果或许会一样,但不同的地方就在于你所用算法所耗费的资源和……

图的遍历DFS深搜优先搜索及C语言代码实现

图的遍历DFS深搜优先搜索及C语言代码实现1.图的遍历在理解DFS算法之前,我们首先需要对什么是遍历进行了解,遍历的概念就是:从某一个点出发(一般是首或尾),依次将数据结构中的每一个数据访问且只访问一遍。2.DFS简介DFS(Depth-Fi……

竞赛学习路线推荐(算法数据结构)

竞赛学习路线推荐(算法数据结构)阅读这一节之前,请确认你熟悉的语言,无论C、C++、java都已经很熟练运用,不存在语法问题了,否则参考本节的学习路线会让你变得着急和打退堂鼓对于已经掌握一种语言可以参赛之后,算法和数据结构的学习,笔……

最大流是什么?

最大流是什么?一、流网络G=(V,E)是一个有向图,其中每条边(u,v)有一个非负的容量值c(u,v),而且如果E中包含一条边(u,v),那么图中就不存在它的反向边。在流网络中有两个特殊的结点,源结点s和汇点t。下……

图文解析图论BFS(广度优先搜索)

图文解析图论BFS(广度优先搜索)BFS全称是BreadthFirstSearch,中文名是宽度优先搜索,也叫广度优先搜索。是图上最基础、最重要的搜索算法之一。所谓宽度优先。就是每次都尝试访问同一层的节点。如果同一层都访问完了,再访问……