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

做暧动漫视频在线观看网站知识营销成功案例介绍

做暧动漫视频在线观看网站,知识营销成功案例介绍,郑州最好的妇科医院,肇庆住房和城乡建设部网站被学校课程轰炸了一周,回过头发现训练营已经要结束了,抓紧时间补完。不过算法这边也很难,感觉每天都是勉强理解在干什么的状态。 94. 城市间货物运输 I 94. 城市间货物运输 I SPFA算法,也是Bellman_ford 队列优化算法 优化原理…

被学校课程轰炸了一周,回过头发现训练营已经要结束了,抓紧时间补完。不过算法这边也很难,感觉每天都是勉强理解在干什么的状态。

94. 城市间货物运输 I

94. 城市间货物运输 I

SPFA算法,也是Bellman_ford 队列优化算法

优化原理:Bellman_ford 算法 每次都是对所有边进行松弛,其实是多做了一些无用功。只需要对上一次松弛的时候更新过的节点作为出发节点所连接的边进行松弛就够了。

其实感觉和Bellman_ford算法比较像,核心思想还是去做松弛。优化的点具体来说有两个,一是使用队列来只更新最短路径发生改变的节点,用visited来标记避免重复入队,也就是多了个全为FALSE的visited数组来进行统计,在图论题目中还是很常见的。另一个就是加入if minDist[cur] + weight < minDist[dest]:多一个判断语句去更新最短路径。

import collectionsdef main():n, m = map(int, input().strip().split())edges = [[] for _ in range(n + 1)]for _ in range(m):src, dest, weight = map(int, input().strip().split())edges[src].append([dest, weight])minDist = [float("inf")] * (n + 1)minDist[1] = 0que = collections.deque([1])visited = [False] * (n + 1)visited[1] = Truewhile que:cur = que.popleft()visited[cur] = Falsefor dest, weight in edges[cur]:if minDist[cur] != float("inf") and minDist[cur] + weight < minDist[dest]:minDist[dest] = minDist[cur] + weightif visited[dest] == False:que.append(dest)visited[dest] = Trueif minDist[-1] == float("inf"):return "unconnected"return minDist[-1]if __name__ == "__main__":print(main())

95. 城市间货物运输 II

95. 城市间货物运输 II

本题主要是判断负权回路,意思就是出现环,并且环内总值相加为负数。这种情况下就可以绕着环无限循环,让权重无限减少,所以需要在代码中判断负权回路的存在并且避免无限次循环。

仍然使用SPFA算法,可以看到代码大体一样,但是最主要的是多了一句判断   if count[next_node] == n: flag = True。Bellman-Ford 算法下能够保证每个点的最短路径最多只需要被更新 n - 1 次。但是当一个点的路径被更新了 第 n 次,说明有环且路径还在变短必有负权环,因为再更新还能变短,就证明有一个负权环,使用count计算节点进入队列的次数。

from collections import deque
from math import infdef main():n, m = [int(i) for i in input().split()]graph = [[] for _ in range(n+1)]min_dist = [inf for _ in range(n+1)]count = [0 for _ in range(n+1)]  # 记录节点加入队列的次数for _ in range(m):s, t, v = [int(i) for i in input().split()]graph[s].append([t, v])min_dist[1] = 0  # 初始化count[1] = 1d = deque([1])flag = Falsewhile d:  # 主循环cur_node = d.popleft()for next_node, val in graph[cur_node]:if min_dist[next_node] > min_dist[cur_node] + val:min_dist[next_node] = min_dist[cur_node] + valcount[next_node] += 1if next_node not in d:d.append(next_node)if count[next_node] == n:  # 如果某个点松弛了n次,说明有负回路flag = Trueif flag:breakif flag:print("circle")else:if min_dist[-1] == inf:print("unconnected")else:print(min_dist[-1])if __name__ == "__main__":main()


文章转载自:

http://ac9uOJij.gfmpk.cn
http://HQwmh75v.gfmpk.cn
http://elJP1Vgu.gfmpk.cn
http://uiE9CUhd.gfmpk.cn
http://HumhT8Ov.gfmpk.cn
http://2qWARUjK.gfmpk.cn
http://QMslXpyv.gfmpk.cn
http://wmQoFAix.gfmpk.cn
http://n4ArVzqN.gfmpk.cn
http://HP1DHuiP.gfmpk.cn
http://L3W2Q0G7.gfmpk.cn
http://EreBsDO3.gfmpk.cn
http://H6yLNefR.gfmpk.cn
http://Mz1dqcBI.gfmpk.cn
http://BFWYuhXj.gfmpk.cn
http://z8Oj3hAo.gfmpk.cn
http://W4C2rhVo.gfmpk.cn
http://hPqyb8Sd.gfmpk.cn
http://tZbBHCjS.gfmpk.cn
http://eBNsSpBX.gfmpk.cn
http://oFtKwJXe.gfmpk.cn
http://oykAY43E.gfmpk.cn
http://5R7Ky32U.gfmpk.cn
http://VPVOqmau.gfmpk.cn
http://Jz6jtCtu.gfmpk.cn
http://jeMAOApT.gfmpk.cn
http://f6uoL5MT.gfmpk.cn
http://DgJPmN0J.gfmpk.cn
http://piK5P6Dn.gfmpk.cn
http://TyGkBULR.gfmpk.cn
http://www.dtcms.com/wzjs/670997.html

相关文章:

  • go语做网站有没有可以免费看的视频
  • 电子公司网站设计上海seo怎么优化
  • 第二课强登陆网站新型智库建设的意见手机上写WordPress博文
  • 网站开发 网页设计战鼓网这种网站怎么做
  • 网站建设发布设需求网页制作类软件有哪些
  • 南宁制作企业网站购物网站案例
  • 上海网站建设在哪辽宁网站建设
  • 如何查看网站收录情况ui网页界面设计素材
  • 中建二局核电建设分公司网站宁波网站推广怎样做
  • 网站建设最好wordpress 后台慢
  • 平面设计素材网站大全网站定制开发怎么写
  • 哈尔滨做设计和网站的公司吗广告公司好听的名字
  • 网站图标在哪里修改如何用子域名做网站
  • 工作室推广网站app后端用什么开发
  • 上海做网站的公司官网祁阳网页设计
  • 苏州知名高端网站建设网络公司网站怎么做聚合页面
  • gofair做网站如何做一份营销策划方案
  • 重庆开县网站建设公司wap网站用什么服务器
  • 非法网站开发是什么意思呼和浩特北京网站建设
  • 织梦网如何把做网站的删掉互联网科技网站
  • 网站开发搭建合同范本厦门做网站xm37
  • 长宁哪里有做网站优化比较好上海市中小企业服务中心
  • 电影网站怎么做seo西安网站设计建设公司 概况
  • 黄岛网站建设哪家好建设局网站安徽
  • 网站做多少外链做网站如何通过流量赚钱
  • 德州网站建设哪家好江苏建设工程招标网站
  • php 网站开发模式上海家装10强名单
  • 公司网站高端网站建设网站访问权限
  • 郑州网站推广策划单页网站网址
  • 网站建设整个过程网站点击率高