leetcode 331. Verify Preorder Serialization of a Binary Tree
来源:互联网 发布:javascript用什么软件 编辑:程序博客网 时间:2024/05/01 20:57
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 true
Example 2:"1,#"
Return false
Example 3:"9,#,#,1"
Return false
class Solution {public:bool isValidSerialization(string preorder) {if(preorder.compare("#")==0)return true;int comma=preorder.find_first_of(',');vector<string>quene;while(comma!=string::npos){string str=string(preorder.begin(),preorder.begin()+comma);preorder.erase(preorder.begin(),preorder.begin()+comma+1);comma=preorder.find_first_of(',');//string str2="#";if(str.compare("#")==0){if(quene.size()==1&&preorder.compare("#")==0)return true;else{if(quene.empty())return false;quene.pop_back();}}elsequene.push_back(str);}return false;}};
accepted
- 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 Verify Preorder Serialization of a Binary Tree
- Leetcode: Verify Preorder Serialization of a Binary Tree
- LeetCode Verify Preorder Serialization of a Binary Tree
- [leetcode] Verify Preorder Serialization of a Binary Tree
- [Leetcode]Verify Preorder Serialization of a Binary Tree
- 51单片机——定时器
- 要做就要做个好男人
- 笔记
- JAY和ZOOM,还有铁面人究竟是谁?
- strcat拼接两个字符指针后,释放内存崩溃问题
- leetcode 331. Verify Preorder Serialization of a Binary Tree
- 折半查找算法
- android 线程里面再开新的的线程
- 偶然发现的CSDN编辑器下的一个不方便用户编写代码的bug
- Unix 下常见的处理信号
- 安装Mirantis openstack8.0 fm
- struts2获取request、session、application的方式
- [POJ2135]Farm Tour 做题笔记
- 如何配置 IIS Redirection?