gpt4 book ai didi

php - 如何用php获取所有可能的决策树

转载 作者:可可西里 更新时间:2023-11-01 12:17:53 25 4
gpt4 key购买 nike

我希望用 php 构建所有可能的决策树。我正在寻找的正是 this answer ,但是,我在 php 中需要它,而且我很难解释 LINQ; stringbuilder 可能需要是一个数组。

最佳答案

这是一个 PHP 版本,它返回由数组形成的树的集合。

function AllBinaryTrees($size = 0)
{
// empty tree, size=0
if ($size === 0) { return array(null); }

// otherwise take 1 from the size for the root of the current subtree and
// split the rest over the subtrees in every possible way
$trees = array();
$size --;

for ($leftsize=0; $leftsize <= $size; $leftsize ++)
{
foreach(AllBinaryTrees($leftsize) as $left)
foreach(AllBinaryTrees($size-$leftsize) as $right)
{
// add the new tree to the collection
$trees[] = array('left' => $left, 'right' => $right);
}
}
return $trees;
}

请注意,这不是最有效的方法,因为我们一次又一次地生成给定大小的子树,因此缓存它们会更好。我们可以将这个函数包装在一个类中,该类为每个大小保留一个包含树的缓存。

关于php - 如何用php获取所有可能的决策树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20310746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com