最短路径条数问题(退化Dijkstra,BFS)
来源:互联网 发布:组策略启用网络映射 编辑:程序博客网 时间:2024/05/17 01:24
#include <iostream>#include <queue>#include <cstring>using namespace std;const int N = 16;int Calc(const int G[N][N]){ int step[N]; //记录 每个节点从起点开始几步能走到 int stepNumber[N]; //记录 到每个节点的最短路有几种走法 memset(step, 0, sizeof(int)*N);// 置0 memset(stepNumber, 0, sizeof(int)*N); stepNumber[0] = 1; queue<int> q; //用来存当前搜索节点的额队列 q.push(0); //第一个节点入队列 int from, i, s; while(!q.empty()) { from = q.front(); q.pop(); s = step[from] + 1; //下一个节点的步数 for(i = 1; i < N; i++) { if(G[from][i] == 1) { //i没有到来过,或者发现了更短的路,就把以前的最短步数和最短路径数目替换掉 if(step[i] == 0 || (step[i] > s)) { step[i] = s; stepNumber[i] = stepNumber[from]; q.push(i); } else if(step[i] == s) { stepNumber[i] += stepNumber[from]; } } } } return stepNumber[N-1];}int main() { int G[N][N]; memset(G, 0, sizeof(int) * N *N); //构建邻接表 G[0][1] = G[0][4] = 1; G[1][5] = G[1][0] = G[1][2] = 1; G[2][1] = G[2][6] = G[2][3] = 1; G[3][2] = G[3][7] = 1; G[4][0] = G[4][5] = 1; G[5][1] = G[5][4] = G[5][6] = G[5][9] = 1; G[6][5] = G[6][2] = G[6][7] = G[6][10]= 1; G[7][6] = G[7][3] = 1; G[8][9] = G[8][12] = 1; G[9][5] = G[9][8]= G[9][10]= G[9][13] = 1; G[10][6] = G[10][9]= G[10][13]= G[10][14]= G[10][11] = 1; G[11][10] = G[11][15] = 1; G[12][8] = G[12][13] = 1; G[13][9] = G[13][12] = G[13][14] = 1; G[14][10] = G[14][13] = G[14][15] = 1; G[15][11] = G[15][14] = 1; cout << Calc(G) << endl; return 0;}
阅读全文
0 0
- 最短路径条数问题(退化Dijkstra,BFS)
- 【LeetCode】最短路径条数问题(BFS)
- 迷宫问题,求最短路径长度、最短路径条数、所有最短路径,DFS+BFS+栈+队列
- BFS,Dijkstra,Floyd,DP求解最短路径问题
- 最短路径问题(Dijkstra)
- 最短路径问题 dijkstra
- 最短路径问题(dijkstra)
- 最短路径条数
- 最短路径数 Dijkstra+dfs
- ZOJ 2760 最短路径条数问题
- 最短路径条数问题 - 广度优先搜索
- 最短路径问题 最短路径 dijkstra
- CDOJ 1147 秋实大哥带我飞 最短路径条数 dijkstra就可搞
- 最短路径问题(Dijkstra解法)
- 最短路径问题(Dijkstra算法)
- Dijkstra算法(最短路径问题)
- hdu3790 最短路径问题 (Dijkstra & SPFA)
- hdu2544 dijkstra最短路径问题
- 基于http协议的api接口对于客户端的身份认证方式以及安全措施
- 我的服务器开发之路-windows安装xampp备注
- java常用工具类集合
- Git教程【译】
- 既然选择了远方,便只顾风雨兼程
- 最短路径条数问题(退化Dijkstra,BFS)
- 虚拟机无法运行英雄联盟解决办法
- 腾讯云服务器无法远程桌面登录
- SpringCloud-----3、注册中心集群
- 对对机如何自动打印饿了么,美团外卖订单小票(教程)
- 字符串函数
- 刷题训练——PAT (Basic Level)-1065
- opencv matchTemplate函数的解析
- 浅谈CLR CTS CLS。。。