Day11

作者: wendy_要努力努力再努力 | 来源:发表于2017-11-10 13:31 被阅读0次

顺带反思下昨天做了什么吧,一如既往,刷完题,一个上午就过去了。快到十一点的时候结束,我便会想歇会儿,但又不想那么早吃饭,毕竟中午会回宿舍午休到两点多。但是从刷完题到十一点四十左右吃饭的这段时间,我都是在无所事事。下午精神太差,晚上又总会有活动。
所以昨天就听了一个强化学习的报告,看了DehazeNet的文章,跑了它的代码,去雾这一块还是没找到特别具备深度学习特色的好文章。这篇文章只是用了一个四层的网络模仿出透射率图生成的过程,然后求出透射率t,其他都是照搬传统的求A,再求J。
今天打算刷完题之后,继续重拾《统计学习方法》好好补充一下机器学习算法,传统算法+机器学习算法得双管齐下呀,不然这实习没法找。深度学习的经验就全靠吹,又不可能现场让你操作,顶会论文是没啥希望了。做这个破方向,再发篇水论文,写个毕设差不多就对得起老师了。


  1. Maximum Depth of Binary Tree
    **思路:我想的是判断有没有子节点来让深度加一,但这样的话就有很多条支路了,不合理。像这种二叉树的问题,离不开DFS,BFS,迭代递归
class Solution(object):       
    def maxDepth(self, root):
        """
        :type root: TreeNode
        :rtype: int
        """
        if root == None:
            return 0
        return 1+max(self.maxDepth(root.left),self.maxDepth(root.right))

  1. Binary Tree Level Order Traversal II


    image.png

**思路:层序遍历,对于树结构,我们有四种遍历方式:层序、前序、中序、后序。层序遍历一般用队列,也可以用广度优先搜索。记得输出顺序.reverse()

class Solution(object):           
    def levelOrderBottom(self, root):
        """
        :type root: TreeNode
        :rtype: List[List[int]]
        """
        res = []
        if root == None:
            return res
        q = [root]
        while len(q) != 0 :
            res.append([node.val for node in q])
            new_q = []
            for node in q:
                if node.left:
                    new_q.append(node.left)
                if node.right:
                    new_q.append(node.right)
            q = new_q
        
        res.reverse()
        return res

相关文章

网友评论

      本文标题:Day11

      本文链接:https://www.haomeiwen.com/subject/soqpmxtx.html