Floyed算法 最短路径
#include<iostream>
#include<cstdio>
int v,e,n; //v是顶点数,e是条数
int v1[101][101],path[101][101];
using namespace std;
void input(int n)
{
int max=99999;
int x;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
cin>>x;
if(x!=0) v1[i][j]=x;
else v1[i][j]=max;
path[i][j]=j;
}
}
void floyed(int n,int x,int y)
{
int i,j,k;
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(v1[i][j]>v1[i][k]+v1[k][j])
v1[i][j]=v1[i][k]+v1[k][j];
path[i][j]=path[i][k];
cout<<v1[x][y]<<endl;
int f=x;
while(f!=y)
{
cout<<f<<"-->";
f=path[f][y];
}
cout<<y;
}
int main()
{
int x,y;
cin>>n;
input(n);
cin>>x>>y;
floyed(n,x,y);
}
Floyed算法 最短路径的更多相关文章
- floyed算法
Floyed算法(实际是动态规划问题) 问题:权值矩阵matrix[i][j]表示i到j的距离,如果没有路径则为无穷 求出权值矩阵中任意两点间的最短距离 分析:对于每一对定点u,v看是否存在一个点w使 ...
- POJ 3660 Cow Contest(传递闭包floyed算法)
Cow Contest Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5989 Accepted: 3234 Descr ...
- poj3259Wormholes (Bellman_Ford/SPFA/Floyed算法判断是否存在负环)
题目链接:http://poj.org/problem?id=3259 题目大意:一个图,有n个顶点,其中有m条边是双向的且权值为为正,w条边是单向的且权值为负,判断途中是否存在负环,如果有输出YES ...
- 数据结构与算法--最短路径之Bellman算法、SPFA算法
数据结构与算法--最短路径之Bellman算法.SPFA算法 除了Floyd算法,另外一个使用广泛且可以处理负权边的是Bellman-Ford算法. Bellman-Ford算法 假设某个图有V个顶点 ...
- 数据结构与算法--最短路径之Floyd算法
数据结构与算法--最短路径之Floyd算法 我们知道Dijkstra算法只能解决单源最短路径问题,且要求边上的权重都是非负的.有没有办法解决任意起点到任意顶点的最短路径问题呢?如果用Dijkstra算 ...
- 数据结构与算法--最短路径之Dijkstra算法
数据结构与算法--最短路径之Dijkstra算法 加权图中,我们很可能关心这样一个问题:从一个顶点到另一个顶点成本最小的路径.比如从成都到北京,途中还有好多城市,如何规划路线,能使总路程最小:或者我们 ...
- floyed算法的一些感想
for(int k=1;k<=n;k++) for(int i=1;i<=n;i++) for(int j=1;j<=k;j++) if(f[i][k]+f[k][j]<f[i ...
- SDUT OJ 图结构练习——最短路径 ( Floyed 算法 AND Dijkstra算法)
图结构练习——最短路径 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem ...
- (Dijkstra)迪杰斯特拉算法-最短路径算法
迪杰斯特拉算法是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 算法思想:设G=(V,E)是一个带权有向图 ...
随机推荐
- javascript 倒计时代码
<script language="javascript" type="text/javascript"> var interval = 1000; ...
- thrift的简单实现
1.使用windows实现,首先在apache官网下载一个thrift的编译工具,在项目中建一个文件叫add.thrift的文件,内容如下: namespace java com.vipshop.sa ...
- navicat:cannot create oci environment
1.请注意红色箭头处的配置是从oracle官网下载的安装包 ,当然百度也是很强大的.(建议是在navicat安装目录下解压) 2.红色方框内的是你本地的oracle数据库的sqlplus.exe启动地 ...
- [POJ] 1948 Triangular Pastures (DP)
题目地址:http://poj.org/problem?id=1948 题目大意: 给N条边,把这些边组成一个三角形,问面积最大是多少?必须把所有边都用上. 解题思路: 根据题意周长c已知,求组合三边 ...
- RazorEngine 学习笔记
refer : https://github.com/Antaris/RazorEngine 微软的模板编辑器. Install-Package RazorEngine using RazorEngi ...
- USB的逻辑值和用途值有什么区别?
用途最小值,用途最大值.逻辑最小值,逻辑最大值分别是什么意思?如题: code uint8 ReportDescriptor[]= { //每行开始的第一字节为该条目的前缀,前缀的格式为: //D7~ ...
- .sdp文件格式介绍
最近做RTSP流播放,需要了解.sdp这种会话描述的文件格式,当然,里面的具体语法有SDP解析器来分析.但是我需要大概了解一些字段的意思,它是文本描述的,采用key value的形式描述. https ...
- mysql undo
mysql> show variables like '%undo%'; +-------------------------+-------+ | Variable_name | Value ...
- Shell的输入输出
通过使用read命令,可以实现从终端中输入内容后输出或执行运算 #!/bin/bash #Author: blacksonny #Copyright (c) #Script follows here: ...
- 关于LOAD DATA INFILE 命令的使用问题解决
通过LOAD DATA方式将数据导入数据表中 LOAD DATA INFILE '输入文件的路径及文件名' INTO TABLE 要导入表的表名称; LOAD DATA INFILE 'G:/p.tx ...