以下函数 check() 用于判断一棵二叉树是否为( )。 #include using namespace std; struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode() : val(0), left(nullptr), right(nullptr) {} }; bool check(TreeNode* root) { if (!root) return true; queue q; q.push(root); bool hasNull = false; while (!q.empty()) { TreeNode* cur = q.front(); q.pop(); if (cur == nullptr) { hasNull = true; } else { if (hasNull) return false; q.push(cur->left); q.push(cur->right); } return true; }
A:满二叉树
B:完全二叉树
C:二叉搜索树
D:平衡二叉树
正确答案:B
试卷来源:202606 CCF-GESP编程能力等级认证C++六级真题