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

Commit c855948

Browse files
Merge pull request youngyangyang04#1200 from Camille0512/master
Add one more python code
2 parents a005cb4 + d3a69ff commit c855948

File tree

2 files changed

+22
-36
lines changed

2 files changed

+22
-36
lines changed

‎problems/0098.验证二叉搜索树.md‎

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,28 @@ class Solution:
408408
return True
409409

410410
```
411-
## Go
411+
```python
412+
# 遵循Carl的写法,只添加了节点判断的部分
413+
class Solution:
414+
def isValidBST(self, root: TreeNode) -> bool:
415+
# method 2
416+
que, pre = [], None
417+
while root or que:
418+
while root:
419+
que.append(root)
420+
root = root.left
421+
root = que.pop()
422+
# 对第一个节点只做记录,对后面的节点进行比较
423+
if pre is None:
424+
pre = root.val
425+
else:
426+
if pre >= root.val: return False
427+
pre = root.val
428+
root = root.right
429+
return True
430+
```
431+
432+
## Go
412433

413434
```Go
414435
import "math"

‎problems/0101.对称二叉树.md‎

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -437,41 +437,6 @@ class Solution:
437437
return True
438438
```
439439

440-
层序遍历
441-
442-
```python
443-
class Solution:
444-
def isSymmetric(self, root: TreeNode) -> bool:
445-
if not root: return True
446-
que, cnt = [[root.left, root.right]], 1
447-
while que:
448-
nodes, tmp, sign = que.pop(), [], False
449-
for node in nodes:
450-
if not node:
451-
tmp.append(None)
452-
tmp.append(None)
453-
else:
454-
if node.left:
455-
tmp.append(node.left)
456-
sign = True
457-
else:
458-
tmp.append(None)
459-
if node.right:
460-
tmp.append(node.right)
461-
sign = True
462-
else:
463-
tmp.append(None)
464-
p1, p2 = 0, len(nodes) - 1
465-
while p1 < p2:
466-
if (not nodes[p1] and nodes[p2]) or (nodes[p1] and not nodes[p2]): return False
467-
elif nodes[p1] and nodes[p2] and nodes[p1].val != nodes[p2].val: return False
468-
p1 += 1
469-
p2 -= 1
470-
if sign: que.append(tmp)
471-
cnt += 1
472-
return True
473-
```
474-
475440
## Go
476441

477442
```go

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /