一、斐波那契数列(递推思想,动态规划算法) 二、多源最短路径(给定带权有向图(G = (V,E)),求任意两顶点(Vi,Vj)之间的最短路径) 弗洛伊德算法(Floyd),动态规划思想,算法复杂度大O(N的三次方)。 算法步骤: 1、先定义一个n阶的矩阵,令其对角线的值为0,若存在弧,则对应元素为弧 ...
分类:
编程语言 时间:
2019-12-23 15:00:26
阅读次数:
101
描述:在分阶段执行操作的情况下,在每一阶段都选择当前最后的解,而不顾将来如何。顾名思义:贪心法/贪婪法是“只顾当下,不计未来”;另外,贪心法并不一定总是最优解,但是一个比较不错的可行解。 应用举例:Prim算法,Kruskal算法,Dijkstra算法 Prim算法简述:Prim算法使得求得得解连续 ...
分类:
编程语言 时间:
2019-12-23 13:08:23
阅读次数:
105
地址 https://www.acwing.com/problem/content/description/852/ 这里相比上一篇 Dijkstra模板 使用了堆记录点距离 从而节省了查找最短距离的开销 给定一个n个点m条边的有向图,图中可能存在重边和自环,所有边权均为非负值。 请你求出1号点到n ...
一、软件开发进化史 摘自《从零开始学架构》 机器语言(1940年) 最早的软件开发使用的是“机器语言”,直接使用二进制码0和1来表示机器可以识别的指令和数据。 汇编语言(20世纪40年代) 为了解决机器语言编写、阅读、修改复杂的问题,汇编语言应运而生。汇编语言又叫“符号语言”,用助记符号代替机器指令 ...
分类:
编程语言 时间:
2019-12-13 19:33:42
阅读次数:
99
前言 之前做题都没有感觉,慢慢出去比赛后,打Codeforces,看别的人博客,知乎上的讨论,慢慢的对算法有一些自己的思考。特写是最近看知乎上别人说的Dijkstra利用水流去理解,LCA的学习,感觉自己原来还只是浮在表面的感觉,就是没有真的能做到深入思考,快速理解这些。无论什么算法,如果你能通俗易 ...
分类:
其他好文 时间:
2019-12-12 11:36:58
阅读次数:
84
package com.rao.graph;import java.util.*;/** * @author Srao * @className Dijkstra * @date 2019/12/10 22:15 * @package com.rao.graph * @Description 迪杰斯 ...
分类:
编程语言 时间:
2019-12-11 19:38:39
阅读次数:
114
问题描述:给定有向带权图G=(V,E),其中每条边的权是非负实数。此外,给定V中的一个顶点,称为源点。现在要计算从源点到所有其他各顶点的最短路径长度,这里路径长度指路上各边的权之和。 算法设计:这个问题一般采用迪杰斯特拉算法(Dijkstra)算法思想是先求出长度最短的一条路径,再参照该最短路径求出 ...
分类:
编程语言 时间:
2019-12-07 16:00:29
阅读次数:
115
一、简介 迪杰斯特拉(Dijkstra)算法和弗洛伊德(Flyod)算法均是用于求解有向图从一点到另外一个点最短路径。 二、Dijkstra 迪杰斯特拉算法也是图论中的明星算法,主要是其采用的动态规划思想,使其在数据结构、算法、离散数学乃至运筹学中都扮演重要的角色。 ...
分类:
编程语言 时间:
2019-12-05 01:19:39
阅读次数:
113
Dijkstra算法_ ** 时隔多月,我又回来了!**_ 今天下午久违的又学了会儿算法,又重新学习了一遍Dijkstra,这是第三次重新学习Dijkstra(*以前学的都忘完了>_<*). 废话先不bb,上代码。 #include<bits/stdc++.h> using namespace st ...
分类:
编程语言 时间:
2019-12-04 01:31:14
阅读次数:
83
Dijkstra 单源最短路 算法思想 每次选择没有被访问过的,并且dis最小的点,加入集合,更新dis 模板 例题 参考博客 ...
分类:
其他好文 时间:
2019-12-02 13:58:52
阅读次数:
94