算法小结(Graph)

133. Clone Graph

要求:图的克隆
思路:无思路
ac:采用递归的方式,每次都调用clone

207 Course Schedule

要求:给定输入的选修课程,每一个课程都有先修课,判断能否完成当前课程
思路: 判断有向图是否有环这个采用bfs就可以做,超时。如果判断两个无向图是否有环,用并查集可以做
ac:采用两个数组,一个是一维,用来记录当前课程是否可以学习,另外一个是二维,将课程 +依赖 转换为 依赖 + 课程

210. Course Schedule II

要求:输出一个可行的学习路线
ac:直接在上一题目的基础上,加上一个数组,用来存储数组的输出内容,
debug:没有正确结果时,应该返回new int[0];

310. Minimum Height Trees

要求:给定无环图,自己构造一个树,得到做小树深度,选出最小树深度的根节点
思路:bfs得到树深,list缓存根节点,LTE,bfs遍历得到树深度存在问题
ac:O(n)时间复杂度,从叶子节点出发,连接叶子节点的都去掉一个,如果size为1,自己变为叶子节点,root节点不超过两个,1或者2个root节点都是符合要求的。

332. Reconstruct Itinerary

要求:给定飞机票,输出最小的欧拉距离
思路:无思路
ac:迭代版本的,利用stack,加上两个while循环,不断向stack里面添加,出栈的时候从0开始

399. Evaluate Division

要求:给定输入的除法操作,对于新输入的两个数,按照之前的等式输出相应的值
思路:无思路
ac:还是利用构造图的方法,然后进行DFS,输出正确的结果

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值