Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 这是一个二进制搜索树吗?黑客问题_C++_Tree_Binary Search Tree - Fatal编程技术网

C++ 这是一个二进制搜索树吗?黑客问题

C++ 这是一个二进制搜索树吗?黑客问题,c++,tree,binary-search-tree,C++,Tree,Binary Search Tree,我试图解决的问题是,这是一个来自HackerRank的二叉搜索树,使用树:级别顺序遍历。但它显示了编译错误。是因为使用了队列?隐藏的存根代码将在此问题中传递一个参数。问题链接:。这是我的密码: bool checkBST(Node* root) { if(root == NULL){ return true; } queue<Node*> Q; Q.push(root); whi

我试图解决的问题是,这是一个来自HackerRank的二叉搜索树,使用树:级别顺序遍历。但它显示了编译错误。是因为使用了
队列
?隐藏的存根代码将在此问题中传递一个参数。问题链接:。这是我的密码:

bool checkBST(Node* root) {
        if(root == NULL){
            return true;
        }

        queue<Node*> Q;
        Q.push(root);
        while(!Q.empty()){
            Node *current_node = Q.front();

            if(current_node->left != NULL){
                if(current_node->left->data >= current_node->data){
                    return false;
                }
                Q.push(current_node->left);
            }
            if(current_node->right != NULL){
                if(current_node->right->data <= current_node->data){
                    return false;
                }
                Q.push(current_node->right);
            }

            Q.pop();
        }
      return true;
    }
bool checkBST(节点*根){
if(root==NULL){
返回true;
}
队列Q;
推(根);
而(!Q.empty()){
Node*current_Node=Q.front();
if(当前_节点->左!=NULL){
如果(当前节点->左->数据>=当前节点->数据){
返回false;
}
Q.推送(当前_节点->左);
}
if(当前节点->右侧!=NULL){
如果(当前节点->右->数据){
返回false;
}
Q.push(当前_节点->右侧);
}
Q.pop();
}
返回true;
}

刚刚查看了前面提到的hackerrank挑战,是的,错误是您没有包括
#包括
,但是您不允许在这个挑战中添加头文件。你必须用递归来回答这个问题


如果您想获得有关如何编写递归的提示,请随时询问

请编辑您的问题以包含编译器错误。