图论基础
图论基础算法
DFS n个数字 有多少排列顺序
DFS,即深搜,对一棵树,选择不走到结束,不回头的算法,使用递归实现.
给定一个整数 n,将数字1 ~ n排成一排,将会有很多种排列方法。现在,请你按照字典序将所有的排列方法输出。
范围
$$
1 <= n <= 7
$$
1 |
|
进阶版
游游想知道,有多少个长度为n的排列满足任意两个相邻元素之和都不是素数。你能帮帮她吗?我们定义,长度为n的排列值一个长度为n的数组,其中1到n每个元素恰好出现了一次。(来源:牛客网)范围
$$
2 <= n <= 10
$$
1 |
|
BFS 走出迷宫
BFS,一层一层的搜索,使用queue实现
给定一个迷宫,有入口,需要让找到一条从入口到出口的最短路线。
1 |
|
树的深度遍历
选择树中的一个节点,删除这个点之后的剩余连通块最小,并找出最小值中的最小值
1 |
|
图的层次遍历
给定一个图,找到从1到n的最短距离,如果找不到输出-1
1 |
|
拓扑排序
给一个有向图,输出任意一个拓扑排序,如果没有输出 -1。
1 |
|
Dijkstra求最短路
这里直接给出堆优化版本
1 |
|
bellman-ford 有边数限制的最短路
1 |
|
spfa 最短路 负权边
1 |
|
prim求最小生成树
1 |
|