我想找出二叉搜索树中的空白节点。 为此,我使用了递归。以下是我的代码:
function getNullNode($catid){
$sql = "select * from `mlm_reg` where `key` ='".$catid."'";
$result = mysql_query($sql);
$getnnum = mysql_num_rows($result);
while($fetchCat = mysql_fetch_object($result)){
if(count($fetchCat) < 2){
$newId = $catid;
return $newId;
} else {
getNullNode($fetchCat->mlm_id);
}
}
}
mlm_id 是用户 id 和 key = refer id 但它给了我空白值。
注意: parent 只能创建两个 child 。
示例:假设管理员创建了两个 child a、b,如果他想添加第三个 child ,那么它将添加到 b 或 c 下,所以为此我正在搜索只有 1 个或 0 个 child 的空节点或父节点,如果 b 和 c 都有二/两个 child 然后它将搜索他们的。
但是上面的代码不会给我父 ID 有人可以看到这个问题吗? 我做错了什么
最佳答案
function getNullNode($catid){
$sql = '';
$result = '';
$getnnum = '';
$fetchCat = '';
$sql = "select * from `mlm_reg` where `key` ='".$catid."'";
$result = mysql_query($sql);
$getnnum = mysql_num_rows($result);
if($getnnum < 2){
return $catid;
} else {
while($fetchCat = mysql_fetch_object($result)){
return getNullNode($fetchCat->mlm_id);
}
}
}
关于php - 使用mysql在php中的二叉搜索树中获取空白节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34927280/