順帶反思下昨天做了什么吧,一如既往,刷完題,一個(gè)上午就過去了??斓绞稽c(diǎn)的時(shí)候結(jié)束,我便會想歇會兒,但又不想那么早吃飯,畢竟中午會回宿舍午休到兩點(diǎn)多。但是從刷完題到十一點(diǎn)四十左右吃飯的這段時(shí)間,我都是在無所事事。下午精神太差,晚上又總會有活動(dòng)。
所以昨天就聽了一個(gè)強(qiáng)化學(xué)習(xí)的報(bào)告,看了DehazeNet的文章,跑了它的代碼,去霧這一塊還是沒找到特別具備深度學(xué)習(xí)特色的好文章。這篇文章只是用了一個(gè)四層的網(wǎng)絡(luò)模仿出透射率圖生成的過程,然后求出透射率t,其他都是照搬傳統(tǒng)的求A,再求J。
今天打算刷完題之后,繼續(xù)重拾《統(tǒng)計(jì)學(xué)習(xí)方法》好好補(bǔ)充一下機(jī)器學(xué)習(xí)算法,傳統(tǒng)算法+機(jī)器學(xué)習(xí)算法得雙管齊下呀,不然這實(shí)習(xí)沒法找。深度學(xué)習(xí)的經(jīng)驗(yàn)就全靠吹,又不可能現(xiàn)場讓你操作,頂會論文是沒啥希望了。做這個(gè)破方向,再發(fā)篇水論文,寫個(gè)畢設(shè)差不多就對得起老師了。
- Maximum Depth of Binary Tree
**思路:我想的是判斷有沒有子節(jié)點(diǎn)來讓深度加一,但這樣的話就有很多條支路了,不合理。像這種二叉樹的問題,離不開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))
-
Binary Tree Level Order Traversal II
image.png
**思路:層序遍歷,對于樹結(jié)構(gòu),我們有四種遍歷方式:層序、前序、中序、后序。層序遍歷一般用隊(duì)列,也可以用廣度優(yōu)先搜索。記得輸出順序.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
