首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用mysql在php中获取二进制搜索树中的空节点

问用mysql在php中获取二进制搜索树中的空节点
EN

Stack Overflow用户
提问于 2016-01-21 23:08:24
回答 1查看 610关注 0票数 1

我想找出二叉树中的空节点。为此,我使用了递归。下面是我的代码:

代码语言:javascript
复制
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,但它给我的值是空值。

注:父级只能创建两个子级。

例如:假设admin创建了两个子节点a,b,如果他想添加第三个子节点,那么它将添加到b或c下,因此为此我搜索的是只有1个或0个子节点的null节点或父节点,如果b和c都有两个/两个子节点,那么它将搜索它们的子节点或父节点。

但是上面的代码不会给我父母id,有人能看到这个问题吗。我做错了什么

EN

回答 1

Stack Overflow用户

发布于 2016-01-22 15:56:14

代码语言:javascript
复制
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);
        } 
 } 
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34927280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档