Leetcode 331. Verify Preorder Serialization of a Binary Tree (Medium) (cpp)
来源:互联网 发布:做标准件网络销售需要 编辑:程序博客网 时间:2024/06/06 19:39
Leetcode 331. Verify Preorder Serialization of a Binary Tree (Medium) (cpp)
Tag: Stack
Difficulty: Medium
/*331. Verify Preorder Serialization of a Binary Tree (Medium)One way to serialize a binary tree is to use pre-order traversal. When we encounter a non-null node, we record the node's value. If it is a null node, we record using a sentinel value such as #. _9_ / \ 3 2 / \ / \ 4 1 # 6/ \ / \ / \# # # # # #For example, the above binary tree can be serialized to the string "9,3,4,#,#,1,#,#,2,#,6,#,#", where # represents a null node.Given a string of comma separated values, verify whether it is a correct preorder traversal serialization of a binary tree. Find an algorithm without reconstructing the tree.Each comma separated value in the string must be either an integer or a character '#' representing null pointer.You may assume that the input format is always valid, for example it could never contain two consecutive commas such as "1,,3".Example 1:"9,3,4,#,#,1,#,#,2,#,6,#,#"Return trueExample 2:"1,#"Return falseExample 3:"9,#,#,1"Return false*/class Solution {public:bool isValidSerialization(string preorder) {string s = "";for (int i = 0; i < preorder.length(); i++) {if (preorder[i] != '#') {s += 'n';while (preorder[i] != ',' && i < preorder.length()) i++;} else {s += '#';while (s.length() >= 2 && s.back() == '#' && s[s.length() - 2] == '#') {if (s.length() == 2) return false;s.pop_back();s.pop_back();s.pop_back();s +='#';}i++;}}return s =="#";}};
0 0
- Leetcode 331. Verify Preorder Serialization of a Binary Tree (Medium) (cpp)
- leetcode 331. Verify Preorder Serialization of a Binary Tree
- [LeetCode]331. Verify Preorder Serialization of a Binary Tree
- 【LeetCode】331. Verify Preorder Serialization of a Binary Tree
- LeetCode 331. Verify Preorder Serialization of a Binary Tree
- LeetCode *** 331. Verify Preorder Serialization of a Binary Tree
- LeetCode 331. Verify Preorder Serialization of a Binary Tree
- [leetcode] 331. Verify Preorder Serialization of a Binary Tree
- leetcode 331. Verify Preorder Serialization of a Binary Tree
- [leetcode] 331. Verify Preorder Serialization of a Binary Tree
- LeetCode 331. Verify Preorder Serialization of a Binary Tree
- [leetcode]331. Verify Preorder Serialization of a Binary Tree
- [LeetCode] 331. Verify Preorder Serialization of a Binary Tree
- leetcode 331. Verify Preorder Serialization of a Binary Tree
- LeetCode刷题(C++)——Verify Preorder Serialization of a Binary Tree(Medium)
- leetcode Verify Preorder Serialization of a Binary Tree
- Leetcode: Verify Preorder Serialization of a Binary Tree
- LeetCode Verify Preorder Serialization of a Binary Tree
- 后序遍历结果:DEBFCA
- 商城文档
- beeprint: 比 pprint 更好的打印工具
- dubbo配置scheme文件
- 二叉树前序、中序、后序遍历相互求法
- Leetcode 331. Verify Preorder Serialization of a Binary Tree (Medium) (cpp)
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 从人眼到色彩空间
- Multinomial Logit Model (MNL) 模型R语言nnet包multinom函数实现实例
- Windows消息对Edit控件的处理
- 用R做中文文本分析--用R进行文本挖掘与分析:分词、画词云
- Mac OS X,下载并安装ant
- 第40篇 WebRTC(三)