Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitba663fe

Browse files
committed
2020-09-29
1 parentdac0734 commitba663fe

File tree

6 files changed

+44
-53
lines changed

6 files changed

+44
-53
lines changed

‎0100.相同的树/0100-相同的树.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ def isSameTree(self, p, q):
1313
"""
1414
ifnotpandnotq:
1515
returnTrue
16-
ifnotpornotq:
16+
ifnotpandq:
1717
returnFalse
18+
ifpandnotq:
19+
returnFalse
1820
returnp.val==q.valandself.isSameTree(p.left,q.left)andself.isSameTree(p.right,q.right)

‎0101.对称二叉树/0101-对称二叉树.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,14 @@ def isSymmetric(self, root):
1111
:type root: TreeNode
1212
:rtype: bool
1313
"""
14-
defhelper(node1,node2):
15-
ifnotnode1:
16-
returnnotnode2
17-
ifnotnode2:
18-
returnnotnode1
19-
returnnode1.val==node2.valandhelper(node1.left,node2.right)andhelper(node1.right,node2.left)
2014

21-
returnhelper(root,root)
15+
defisSame(node1,node2):
16+
ifnotnode1andnotnode2:
17+
returnTrue
18+
ifnotnode1andnode2:
19+
returnFalse
20+
ifnode1andnotnode2:
21+
returnFalse
22+
returnnode1.val==node2.valandisSame(node1.left,node2.right)andisSame(node1.right,node2.left)
23+
24+
returnisSame(root,root)

‎0112.路径总和/0112-路径总和.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,13 @@ def hasPathSum(self, root, sum):
1212
:type sum: int
1313
:rtype: bool
1414
"""
15-
ifnotroot:
16-
returnFalse
17-
ifnotroot.leftandnotroot.right:
18-
returnroot.val==sum
19-
returnself.hasPathSum(root.left,sum-root.val)orself.hasPathSum(root.right,sum-root.val)
15+
defdfs(node,s):
16+
ifnotnode:
17+
returnFalse
18+
19+
s+=node.val
20+
ifnotnode.leftandnotnode.right:
21+
returns==sum
22+
returndfs(node.left,s)ordfs(node.right,s)
23+
24+
returndfs(root,0)

‎0113.路径总和II/0113-路径总和II.py

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,23 @@
66
# self.right = None
77

88
classSolution(object):
9-
defpathSum(self,root,s):
9+
defpathSum(self,root,sum):
1010
"""
1111
:type root: TreeNode
1212
:type sum: int
1313
:rtype: List[List[int]]
1414
"""
1515
res= []
16-
defdfs(node,path):
16+
defdfs(node,path,s):
1717
ifnotnode:
18-
return
18+
return []
19+
s+=node.val
20+
ifnotnode.leftandnotnode.right:
21+
ifs==sum:
22+
res.append(path+ [node.val])
1923

20-
path+= [node.val]
21-
ifnotnode.leftandnotnode.rightandsum(path)==s:
22-
res.append(path[:])
23-
24-
dfs(node.left,path)
25-
dfs(node.right,path)
26-
27-
path.pop()
28-
29-
dfs(root, [])
24+
dfs(node.left,path+ [node.val],s)
25+
dfs(node.right,path+ [node.val],s)
26+
27+
dfs(root, [],0)
3028
returnres

‎0222.完全二叉树的节点个数/0222-完全二叉树的节点个数.py

Lines changed: 5 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,8 @@ def countNodes(self, root):
1111
:type root: TreeNode
1212
:rtype: int
1313
"""
14-
ifnotroot:
15-
return0
16-
17-
self.leavesCnt=0
18-
self.height=0
19-
self.flag=0
20-
defdfs(node,layer):
21-
ifnotnodeorself.flag:
22-
return
23-
ifnotnode.leftandnotnode.right:
24-
25-
self.height=max(self.height,layer)
26-
iflayer<self.height:
27-
self.flag=1
28-
else:
29-
self.leavesCnt+=1
30-
return
31-
dfs(node.left,layer+1)
32-
dfs(node.right,layer+1)
33-
34-
dfs(root,0)
35-
# print self.leavesCnt
36-
returnself.leavesCnt+sum([2**iforiinrange(self.height)] )
14+
defdfs(node):
15+
ifnotnode:
16+
return0
17+
return1+dfs(node.left)+dfs(node.right)
18+
returndfs(root)

‎0226.翻转二叉树/0226-翻转二叉树.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@ def invertTree(self, root):
1313
"""
1414
ifnotroot:
1515
returnroot
16-
left=root.left
17-
right=root.right
18-
root.left=self.invertTree(right)
19-
root.right=self.invertTree(left)
16+
left=self.invertTree(root.left)
17+
right=self.invertTree(root.right)
18+
19+
root.left=right
20+
root.right=left
2021
returnroot

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp