【validate-binary-search-tree】
来源:互联网 发布:oracle 执行sql脚本 编辑:程序博客网 时间:2024/06/05 16:06
Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows:
- The left subtree of a node contains only nodes with keys less than the node's key.
- The right subtree of a node contains only nodes with keys greater than the node's key.
- Both the left and right subtrees must also be binary search trees.
confused what"{1,#,2,3}"means? > read more on how binary tree is serialized on OJ.
OJ's Binary Tree Serialization:
The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below.
Here's an example:
1 / \ 2 3 / 4 \ 5
The above binary tree is serialized as"{1,2,3,#,#,4,#,#,5}".
题意:判断一棵树是否是二叉搜索树;
思路:中序遍历看是否是有序的
class Solution{public:bool isValidBST(TreeNode* root){int pre = INT_MIN;bool res = true;inorder(pre, root, res);return res;}void inorder(int& pre, TreeNode* root, bool &res){if (root){inorder(pre, root->left, res);if (root->val<=pre){res = false;return;}pre = root->val;inorder(pre, root->right, res);}}};
阅读全文
0 0
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- 使用Git、Git GUI和TortoiseGit
- 三极管的工作原理
- Log4Net 生成多个文件、文件名累加解决方法
- Python 运算符(算数 比较 赋值 位 逻辑 成员 身份 优先级)
- 软件工程文档
- 【validate-binary-search-tree】
- JVM模拟面
- 【转】学习路线2
- Swift3.0之基本语法01
- 我为什么喜欢用C#来做并发编程
- openwrt添加新设备支持
- 软件工程开发过程阶段及工具
- Noip2016 组合数问题
- 我为什么喜欢用C#来做并发编程