当前位置: 首页 > news >正文

网站能当做创业来做吗运营商网站登录注册

网站能当做创业来做吗,运营商网站登录注册,中山建设厅网站,加强网站和公众号建设迪杰斯特拉算法通常用在图的最短路径问题上 而迷宫的最短路径可以用BFS来做#xff0c;虽然BFS不能用于带权值的迷宫#xff0c;但是可以对BFS稍微改进#xff0c;只需要把判断是否走过的数组改为最短路径的数组#xff0c;在判断是否可走时判断是否比最短的小即可 Dijks…迪杰斯特拉算法通常用在图的最短路径问题上 而迷宫的最短路径可以用BFS来做虽然BFS不能用于带权值的迷宫但是可以对BFS稍微改进只需要把判断是否走过的数组改为最短路径的数组在判断是否可走时判断是否比最短的小即可 Dijkstra步骤如下 1初始化一个graph二维数组来存储图的邻接表一个dis一维数组来存储最短路径一个check来存储是否走过 2从起点开始将起点的路径设置为0也就是disp[起点] 0 3进入循环每次寻找dis中最小的节点然后遍历邻接表如果邻接表的距离该点的dis dis[循环到的点]那么就迭代循环到的点最后将最小的那个点check设置为true while(!end()){//寻找最小的点int min max_num,min_num max_num;for(int i 1;i ::max;i){if(dis[i] min_num !check[i]){min i;min_num dis[i];}}//从邻接表中寻找这个点可到达的点并迭代可到达的点的距离for(int i 1;i ::max;i){if(graph[min][i] ! max_num){if(dis[i] dis[min] graph[min][i]){dis[i] dis[min] graph[min][i];//经过最小的那个点到达这个点的距离为dis[min] graph[min][i]}}}//将最小的那个点标记check[min] true;} 4循环直到所有check都为true即可 也可以直接写一个函数判断 //这里写了一个函数判断是否都被标记 bool end() {for(int i 1;i ::max;i){if(!check[i]){return false;}}return true; } c代码如下 #include bits/stdc.h#define max_num 9999 using namespace std;int graph[max_num][max_num];//邻接表存储图 int dis[max_num];//存储最短路径 bool check[max_num];//存储是否被标记 int max;//存储最大节点//这里写了一个函数判断是否都被标记 bool end() {for(int i 1;i ::max;i){if(!check[i]){return false;}}return true; }void dijkstra(int e) {while(!end()){//寻找最小的点int min max_num,min_num max_num;for(int i 1;i ::max;i){if(dis[i] min_num !check[i]){min i;min_num dis[i];}}//从邻接表中寻找这个点可到达的点并迭代可到达的点的距离for(int i 1;i ::max;i){if(graph[min][i] ! max_num){if(dis[i] dis[min] graph[min][i]){dis[i] dis[min] graph[min][i];//经过最小的那个点到达这个点的距离为dis[min] graph[min][i]}}}//将最小的那个点标记check[min] true;} }int main() {//初始化memset不可以用INT_MAX赋值因为INT_MAX为无符号数最大值为1111111111111111而memset会将其转换为有符号数的补码也就是-1memset(dis,max_num,sizeof(dis));memset(check, false,sizeof(check));memset(graph,max_num,sizeof(graph));int n;cin n ::max;int times n;while(times--){int x,y,z;cin x y z;graph[x][y] z;graph[y][x] z;}#if 0//输出邻接表for(int i 0;i ::max;i){for(int j 0;j ::max;j){printf(%5d ,graph[i][j]);}cout endl;} #endif//起点启动int start;cin start;dis[start] 0;dijkstra(start);//输出每个点到起点的最短路径for(int i 1;i ::max;i){cout i : dis[i] endl;} } /* 10 7 1 3 2 1 2 5 2 4 9 3 4 3 3 6 2 4 6 4 4 5 8 5 6 9 5 7 3 6 2 7 1 */
http://www.w-s-a.com/news/903246/

相关文章:

  • 微网站 域名企业网站怎么做推广
  • 兴安盟住房和城乡建设部网站在国外做网站
  • 南雄市建设局网站搜索关键词的方法
  • 网站建设维护工作经验深圳定制展会
  • 新闻类网站备案WordPress评论昵称显示错误
  • 如何建立一个个人网站自己做一个购物网站
  • 吴忠网站建设公司中国建筑股份有限公司 官网
  • 深圳电商网站开发公司page list wordpress
  • 长安外贸网站建设顺德区网站设计建设企业
  • 临沂市建设局网站简介专业建设网站开发
  • 肇庆网站制作设计中国企业500强招聘
  • 苏州厂房装修宁波seo网络推广外包报价
  • 文山知名网站建设惠州哪家做网站好
  • 物流网站风格网站登录密码保存在哪里设置
  • 免费网站怎么建立icodepython基础教程
  • 无障碍网站建设方案wordpress 任务管理系统
  • iis5.1发布网站中小企业网络营销存在的问题研究论文
  • 阳泉软件定制网站建设网站可以做多语言的吗
  • 建设网站的目的及功能定位主要包括哪些内容百度关键词优化
  • 开一个小程序要多少钱宁波seo网络推广外包报价
  • 网站备案最新备案号电子商务网站建设的规章制度
  • wordpress制作单页网站导航页面鞍山信息港招聘信息
  • 屏蔽ip地址访问网站自己做衣服的网站
  • 网站建设 域名业务 邮箱哪里有网站建设中心
  • 免费网站赚钱重庆建设摩托车股份有限公司
  • 合肥水运建设工程监理网站自己买服务器能在wordpress建网站
  • wordpress积分商城主题整站seo排名要多少钱
  • 鲜花网站建设的利息分析网站设计与制作专业
  • 深圳网站建设排名做网站的公司高创
  • 杭州哪家做外贸网站全国物流网站有哪些平台