Php 邻接表排序算法
我有这样的邻接列表: 我需要将其分类为: 2,7,9,10,8,16,17,11 基本上,我有一个表,其中存储了带有父ID的帖子。我可以有无限的级别 我只需要算法或完整的PHP代码Php 邻接表排序算法,php,algorithm,binary-tree,Php,Algorithm,Binary Tree,我有这样的邻接列表: 我需要将其分类为: 2,7,9,10,8,16,17,11 基本上,我有一个表,其中存储了带有父ID的帖子。我可以有无限的级别 我只需要算法或完整的PHP代码 我尝试使用不同的行/列前缀和一些循环函数。好的,我终于做到了。我是我的 public function makeTree($parent_id = 0, &$array = array()) { // Get results where parent_id == $parent_id $recep
我尝试使用不同的行/列前缀和一些循环函数。好的,我终于做到了。我是我的
public function makeTree($parent_id = 0, &$array = array())
{
// Get results where parent_id == $parent_id
$recepts = $this->recept->get()->where("parent_id =" . $parent_id);
// Foreach through them
foreach ($recepts as $recept) {
// Add this to array
array_push($array, $recept);
// Repeat
$this->makeTree($recept["id"], $array);
}
return $array;
}
你那儿的那棵树很好看,但它不够好,我们不能为你做这件事。Stackoverflow在这里帮助您解决特定的编码问题。如果你亲自试一试,带着遇到的任何问题回来,我们将非常乐意提供帮助;然而,“我只需要php中的算法或完整代码”表明您没有尝试过任何东西,也没有进行任何研究。在我看来,这不像二叉树。这里有一个邻接列表——有很多关于解析邻接列表的指南(用PHP或伪代码)。@iainn不是二叉树的“分支”,而邻接列表只是一条“道路”?这对我来说就像是一棵二叉树。看看这个家伙是如何问一个关于二叉树的类似问题的;二叉树中的节点只能有两个子节点,左侧和右侧。