题目如下:

解题思路:本题大多数人采用DFS的方法,这里我用的是另一种方法。我的思路是建立一次初始值为空的safe数组,然后遍历graph,找到graph[i]中所有元素都在safe中的元素,把i加入safe。遍历完graph后继续重头遍历,直到某一次遍历后无新元素加入safe后停止。safe即为题目要求的答案。以上面例子距离,首先safe是空,第一次遍历graph后,safe=[5,6];第二次遍历后将2和4加入safe;第三次遍历后无新元素加入,safe最终结果为[5,6,2,4]

代码如下:

class Solution(object):
def eventualSafeNodes(self, graph):
"""
:type graph: List[List[int]]
:rtype: List[int]
"""
safe = []
flag = True
dic = {}
while flag:
flag = False
for i,v in enumerate(graph):
exist = True
for j in v:
if j not in dic:
exist = False
break
if exist == True and i not in dic:
safe.append(i)
dic[i] = 1
flag = True
safe.sort()
return safe

最新文章

  1. HDU 3015 Disharmony Trees(树状数组)
  2. iOS静态库及Framework 创建
  3. Python体验(08)-图形界面之工具栏和状态栏
  4. 修改APK包并push到system/app路径下安装
  5. js判断是否在微信浏览器中打开
  6. iPhone6的CSS3媒体查询
  7. jquery树形菜单完整代码
  8. ADODB.Connection 错误 '800a0e7a' 未找到提供程序。该程序可能未正确安装。解决方法!
  9. VS2010中水晶报表应用及实例
  10. 美化 - DropDownList控件
  11. Python Selenium设计模式-POM
  12. python Flask
  13. Python3.4 + Django1.7.7 搭建简单的表单并提交
  14. Java笔试题库之选题题篇【141-210题】
  15. [20190418]exclusive latch spin count.txt
  16. Linux 系统根目录下各个文件夹的作用
  17. laravel----------如何优化laravel框架
  18. HoloLens开发手记 - 使用HoloLens模拟器 Using HoloLens emulator
  19. Python 数据结构--查找
  20. SQL Server 查询性能优化——创建索引原则(一)

热门文章

  1. c++读取utf-8格式中英文混合string
  2. wiki团队协作软件Confluence
  3. CNN文本分类
  4. 应用安全 - harbaor - 漏洞汇总
  5. 文档压缩 | gzip、bzip2、xz
  6. 多條件查詢SQL語句
  7. [LOJ 6253] Yazid 的新生舞会
  8. 【目标检测+域适应】CVPR18 CVPR19总结
  9. Excel如何通过关键字模糊匹配查找全称
  10. vue项目1-pizza点餐系统9-axios实现数据存储