c_cpp 700.在二进制搜索树中搜索
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 700.在二进制搜索树中搜索相关的知识,希望对你有一定的参考价值。
// 执行用时: 32 ms, 在Search in a Binary Search Tree的C++提交中击败了64.98% 的用户
class Solution {
public:
vector<pair<int,TreeNode*>> array;
TreeNode* searchBST(TreeNode* root, int val) {
if(root == nullptr) return NULL;
travelTree(root);
for(int i = 0;i < array.size();++i){
if(array[i].first == val)
return array[i].second;
}
return NULL;
}
void travelTree(TreeNode* root){
if(root){
array.push_back(make_pair(root->val,root));
travelTree(root->left);
travelTree(root->right);
}
}
};
// 36 ms
TreeNode* searchBST(TreeNode* root, int val) {
while (root != nullptr && root->val != val) {
root = (root->val > val) ? root->left : root->right;
}
return root;
}
以上是关于c_cpp 700.在二进制搜索树中搜索的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode Algorithm 700. 二叉搜索树中的搜索
leetcode 700. 二叉搜索树中的搜索
LeetCode-700. 二叉搜索树中的搜索
Leetcode刷题100天—700. 二叉搜索树中的搜索( 二叉树)—day34
Leetcode刷题100天—700. 二叉搜索树中的搜索( 二叉树)—day34
LeetCode 700.二叉树中的搜索