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

上海优化网站关键词wordpress替代2017

上海优化网站关键词,wordpress替代2017,wordpress账号交易,wordpress 头像算法概述#xff1a; Bellman-Ford算法核心代码如下 for(int i 1;in-1;i) for(int j 1;jm;j) if(dic[v[j]] dic[u[j]] w[j]] dic[v[j]] dic[u[j]] w[j]; 首先我们要了解一个点就是我们这次不再使用邻接矩阵来存储图的信息#xff0c;而是定义三个一维数组来…算法概述 Bellman-Ford算法核心代码如下 for(int i 1;in-1;i) for(int j 1;jm;j) if(dic[v[j]] dic[u[j]] w[j]] dic[v[j]]  dic[u[j]] w[j]; 首先我们要了解一个点就是我们这次不再使用邻接矩阵来存储图的信息而是定义三个一维数组来存储图的信息。 首先定义 u[n] 来存储边的起点v[n]来存储边的终点w[n]来存储边的长权重。 例如存储如下元素 4 4         1 2 3         2 4 7         3 4 5         3 1 3 和Dijkstra算法一样这段代码也是求单源最短路径所以我们同样也要定义一个dic[n]数组来存储所有点到1的最短距离。注意这里因为使用的并非邻接矩阵所以初始化dic时默认除了dic[1] 0以外暂时全部看作不连通也就是假设以以上数据为例dic内容要初始化为 【0 inf, inf, inf】,其中inf看作无穷大表示不通。 那么我们再来看核心代码的最后两句。 if(dic[v[j]] dic[u[j]] w[j]] dic[v[j]]  dic[u[j]] w[j]; dic[v[j]]的值是1 到 v[j]这个点的值 dic[u[j]] 是 1 到 u[j] 这个点的值 w[j] 是 u[j] 到 v[j] 的值意思是如果如果 1 通过 1 - u[j] - v[j] 这条路比 1 - v[j] 值小的话更新dic[v[j]]的值。也就是通过u[j] -v[j] 这条边进行松弛来优化路径。 初始化示意图如下 for(int i 1;in-1;i) for(int j 1;jm;j) if(dic[v[j]] dic[u[j]] w[j]] dic[v[j]]  dic[u[j]] w[j]; 当第一轮循环时: 当先通过 j 1 通过第一条边进行优化时 if(dic[ 2 ] dic[ 1 ] 3]发现dic[2 ] 需优化然后 重置 dic[2] dic[1]3 3。 当 j 2 时 通过第二条边进行优化时 if(dic[ 4 ] dic[ 2 ] 7],发现dic[4] 可以优化然后 重置 dic[ 4 ]  dic[ 2 ] 7 37 10。 当 j 3时通过第三条边进行优化时if(dic[ 4 ] dic[ 3 ] 5]发现dic[4]无法优化因为 dic[ 4 ] 10  dic[ 3 ] 5  inf 5。 当 j 4 时 通过第四条边进行优化时 if(dic[ 1 ] dic[ 3 ] 3],发现dic[1]无法优化因为 dic[ 1 ] 0  dic[ 3 ] 3  inf 3。 最后经过一轮松弛后得到 dic [0, 3, inf ,10]; 当 i 2 进行第二轮松弛时 当先通过 j 1 通过第一条边进行优化时 if(dic[ 2 ] dic[ 1 ] 3]发现dic[2 ] 无需优化因为 dic[2] dic[1]3 3。 当 j 2 时 通过第二条边进行优化时 if(dic[ 4 ] dic[ 2 ] 7],发现dic[4] 无需优化 当 j 3时通过第三条边进行优化时if(dic[ 4 ] dic[ 3 ] 5]发现dic[4]无需优化 当 j 4 时 通过第四条边进行优化时 if(dic[ 1 ] dic[ 3 ] 3],发现dic[1]无需优化 这样我们就完成了这组数据因为这是构建的有向图所以1 才无法到达 3. 既然很清晰流程了 我再丢给大家一组数据 5 7 1 2 8 1 3 1 1 4 2 3 4 2 2 4 3 3 5 3 4 5 3 现在请找到一张草稿纸来试着执行刚才所讲的流程。 具体代码 #includestdio.h int main(void) {     int u[10], v[10], w[10];     int n, m, inf 99999999;     int dic[10] { 0 }; scanf_s(%d%d, n, m); for (int i 1; i m; i)         scanf_s(%d%d%d, u[i], v[i], w[i]);//存储边的信息 for (int i 2; i n; i)         dic[i] inf;//初始化1 的单源最短路径值。 //核心代码 for (int i 1; i n - 1; i)         for (int j 1; j m; j)             if (dic[v[j]] dic[u[j]] w[j])                 dic[v[j]] dic[u[j]] w[j]; for (int i 1; i n; i)         printf(%d , dic[i]);//输出结果} 注意事项 最外层代码循环n-1次的原因是n 个顶点1到任何顶点的最多经过n-1个顶点。每一轮松弛循环如果没有完成单源最短路径的最终结果都至少会有一次松弛。 细心的同学可能会发现我们刚才使用的数据 5 7 1 2 8 1 3 1 1 4 2 3 4 2 2 4 3 3 5 3 4 5 3 是上一篇文章的内容在上一篇中结果是0 5 1 2 4 。 而在这里答案是0 8 1 2 4。 那么为什么会造成这种影响呢因为我们使用的这段代码是处理有向图的而在上一篇文章中是处理无向图的那么有没有什么办法来改进这段代码使代码能够处理无向图呢答案当然是可以的而且十分简单。 聪明的同学注意到数据 4 4         1 2 3         2 4 7         3 4 5         3 1 3 在第二轮就能发现没有优化证明已经得出结果每必要进行n-1轮循环那么大家思考下怎么提前退出循环呢 课后作业 改进这段代码使代码能够处理无向图。 如何证明达到最优解提前退出循环。 明天带来答案。
http://www.tj-hxxt.cn/news/231071.html

相关文章:

  • 凡科做的网站户外网站建设
  • 做的最好的视频网站在安阳想建个网站怎么做
  • 如何做企业网站小程序育才网站建设
  • 中国安能建设集团有网站网站集约化建设 通知
  • 阿里云9元做网站男女这样做那个网站
  • 网站建设概政务公开 网站建设滞后
  • 苏州网站制作的公司wordpress 主题小工具
  • 郑州做企业网站互动平台论坛
  • 中国铁建商城电子商务平台网站优化推广的方法
  • 58做网站联系电话医院网站设计与实现
  • 徐州网站开发设计公司电话微信公众号配置 网站建设
  • 猎场第几集做的网站推广网站被降权会发生什么
  • 免费网站模禁止wordpress自动更新
  • 网站建设模板系统查建设工程规划许可证网站
  • 网站年报公示怎么做那个网站有题做
  • wordpress acg站江苏分销网站建设
  • 园洲做网站公司网站开发的话术
  • 一个网站里有两个网页怎么做html在wordpress中的作用
  • 企业网站的建立与维护论文搭建网站的英语
  • 西安电子商务网站开发高新公司网站建设电话
  • 网站建实例专门做拼团的网站
  • 哪个网站可以做公众号封面报告网站开发环境
  • 黑龙江建设银行网站房屋租赁网站建设如何给客户定位
  • 建设农产品网络营销网站枣阳网站建设_枣阳山水数码
  • php企业门户网站佛山顺德容桂网站制作
  • 网站建设项目分析报告西安网站建设云速网络
  • 流行的网站开发语言四川省凉亭建设工程有限公司网站
  • wordpress搜索图标无锡网站推广优化公司
  • 网站注销流程js网站源码
  • 网站设计公司官网WordPress开发过程