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

2015年做哪些网站致富单页营销分享网站

2015年做哪些网站致富,单页营销分享网站,菲律宾做网站,曲靖做网站公司题目#xff1a; 给定一个由 n 个节点组成的网络#xff0c;用 n x n 个邻接矩阵 graph 表示。在节点网络中#xff0c;只有当 graph[i][j] 1 时#xff0c;节点 i 能够直接连接到另一个节点 j。 一些节点 initial 最初被恶意软件感染。只要两个节点直接连接#xff0c…题目 给定一个由 n 个节点组成的网络用 n x n 个邻接矩阵 graph 表示。在节点网络中只有当 graph[i][j] 1 时节点 i 能够直接连接到另一个节点 j。 一些节点 initial 最初被恶意软件感染。只要两个节点直接连接且其中至少一个节点受到恶意软件的感染那么两个节点都将被恶意软件感染。这种恶意软件的传播将继续直到没有更多的节点可以被这种方式感染。 假设 M(initial) 是在恶意软件停止传播之后整个网络中感染恶意软件的最终节点数。 我们可以从 initial 中删除一个节点并完全移除该节点以及从该节点到任何其他节点的任何连接。 请返回移除后能够使 M(initial) 最小化的节点。如果有多个节点满足条件返回索引 最小的节点 。 提示 n graph.lengthn graph[i].length2 n 300graph[i][j] 是 0 或 1.graph[i][j] graph[j][i]graph[i][i] 11 initial.length  n0 initial[i] n - 1 initial 中每个整数都不同 思考 今天的题和昨天的很相似区别在于“从 initial 中删除一个节点 完全移除该节点以及从该节点到任何其他节点的任何连接” 相似的仍然将图中所有彼此有路径到达的节点们看成一组如果一组中有至少一个节点初始时被感染那么这一组所有节点最后都会被感染。 我们要去掉initial中的一个节点和它的所有边之后使剩下的感染节点最少 ---- 这个节点能且只能凭自己感染的节点最多1. 通过其他initial节点连接的节点不算  2. 被多个initial节点感染的节点不算 那么我们的算法步骤如下数组visited记录每个节点能被多少initial节点凭自己感染≥0表示唯一的initial节点索引-2表示有多个initial节点连接字典sum_dict记录initial节点能且只能凭自己感染的节点数 1. 遍历initial中的每个节点node。 2. 找到所有和node之间有路径的节点k并进行判断1. 若visited[k]为-1则将visited[k]设为node2. 若visited[k]为大于等于0的值说明此前已经有initial节点感染他了则将visited[k]设为-2. 3. initial中的每个节点node都判断完后遍历visited数组若值大于等于0则说明这个节点只被一个initial节点感染了将字典sum_dict中该initial节点对应的值加一。 4. 在字典sum_dict中找到值最大的initial节点返回。 代码如下 from collections import dequeclass Solution(object):def minMalwareSpread(self, graph, initial)::type graph: List[List[int]]:type initial: List[int]:rtype: int# 将互相能到达的节点们视为一个组如果initial中有属于这一组的节点每组的节点数量即为这一个小网络的感染恶意软件的最终节点数n len(graph)sum_dict {} # 字典sum_dict记录initial节点能且只能凭自己感染的节点数visited [-1] * n # 数组visited记录节点能被多少initial节点凭自己感染(≥0表示唯一的initial节点索引-2表示有多个initial节点连接)def connectedNodes(graph, initial, node):judged [-1] * n # 表示在这次遍历中节点是否已经判断过了queue deque() # 队列储存待判断相邻节点的节点queue.append(node)while queue:x queue.popleft()for k in range(n):if k x: # 跳过当前节点本身continueif judged[k] -1 and graph[x][k] 1 and k not in queue and k not in initial:queue.append(k)judged[k] 1if visited[k] -1:visited[k] nodeelif visited[k] 0 and visited[k] ! node and graph[x][k] 1:visited[k] -2for i in initial:connectedNodes(graph, initial, i)sum_dict[i] 1for j in range(n):if visited[j] 0:sum_dict[visited[j]] 1m 0for key, value in sum_dict.items(): # 在字典sum_dict中找到值最大的initial节点返回if value m:m valueres keyif value m and key res:res keyreturn res 提交通过debug了一万年泪目
http://www.tj-hxxt.cn/news/138265.html

相关文章:

  • pc网站建设方案有哪些深圳专业专业网站建设公司
  • 网络营销是一种无媒介销售阳江网站seo公司
  • 慈溪网站建设报价网络营销公司哪家不错
  • 服饰网站建设wordpress文章部分展示
  • 萧山区网站建设贵州润铁祥建设工程有限公司网站
  • 如何网站做外贸生意网校培训
  • 网站新闻发布系统模板网站展示型推广有哪些
  • 网站 繁体 js咨询类公司注册需要什么
  • 北京企业网站设计报价男的和女的做那种短视频网站
  • 可以做兼职的网站有哪些工作室销售怎样找精准客户
  • 企业推广建站瑞安 网站建设
  • 企业网站开发公司有哪些微信小程序开发大赛
  • 网站建设店铺介绍怎么写wordpress js加载速度
  • 安国市住房和城乡建设局网站照明灯企业网站织梦模板
  • 大岭山网站建设公司html网页设计介绍
  • dede 网站地图 模块科技 响应式网站模板下载
  • 百度竞价网站谁做网站建设专业性的评估
  • 前端可以自己做网站么温州seo优化
  • 做网站设计难吗长春建站推荐
  • 郴州做网站seo台州建设工程网站
  • 聊城网站制作公司wordpress分类样式
  • 公司网站怎么关闭辽宁网站建设电话
  • 制作一个专门浏览图片的网站网页设计和网站开发哪个好
  • 青岛网站建设找php网站api接口写法
  • 网站开发 需要用到什么软件seoul是什么国家
  • 网站添加标签云wordpress 最强大主题
  • 顺义建站公司浙江建设继续教育网站
  • 网站做电商资质免费企业建站源代码
  • 网站推广计划书旅游网站效果图
  • 网站建设需要学些什么动漫制作专业学校前十名