题目详见 331. 验证二叉树的前序序列化
解题思路:
9 # # 1
- slots表示一个槽位‘#’,空树,需要一个槽位。
- split后,遍历,如果slots == 0,说明没有槽位了,此时已经满了,但是又有新的元素,所以返回false
- i==‘#’,slots -= 1槽位减一, i != ‘#’ slots +=1
class Solution:
def isValidSerialization(self, preorder: str) -> bool:
# 9 # # 1
slots = 1
for i in preorder.split(','):
if slots == 0:
return False
if i == '#':
slots -= 1
else:
slots += 1
return slots == 0