测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A18446. 以下函数 check() 用于判断一棵二叉树是否为( )。bool check(TreeNode* root) { if (!root) return true; queue<TreeNode*> q; q.push(root); bool hasNull = false; while (!q.empty()) { TreeNode* cur = q.front(); q.pop(); if (…

单选题 困难

题目描述

以下函数 check() 用于判断一棵二叉树是否为(    )。

bool check(TreeNode* root) {
	if (!root) return true;
	
	queue<TreeNode*> 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;
}

选项(单选)

上一题 下一题