数码资讯
PHP构建的两叉树算法实例
树(树)在数据结构中很重要,这表示两叉树用括号表示: 两个叉树节点 类BTnode { 公开数据; 公众左右美元= null; 公共rchild美元= null; 公共功能__construct($数据){ 此数据; } } 然后建造两棵叉树。 函数的CreateBTNode($根,字符串str)
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
树(树)在数据结构中很重要,这表示两叉树用括号表示:
两个叉树节点
类BTnode {
公开数据;
公众左右美元= null;
公共rchild美元= null;
公共功能__construct($数据){
此数据;
}
}
然后建造两棵叉树。
函数的CreateBTNode($根,字符串str)
{
strarr美元= str_split($str);
$堆栈{ };
$ = NULL;
$顶部= 1;
$ = $ j = 0;
$ = null;
foreach(strarr美元美元,CH){
开关($ CH){
案例':
美元+;
array_push(合栈,P);
$ k=1;
打破;
案例':
array_pop($堆栈);
打破;
案例,:
$ k=2;
打破;
违约:
P =新的BTnode($ CH);
如果($根= = null){
$ root = $ P;
{人}
开关($ k){
案例1:
端(合栈)->左右= P;
打破;
案例2:
端(合栈)-> rchild = P;
打破;
}
}
打破;
}
}
}
这里是一个函数(在中间顺序遍历)中打印一个二叉树:
函数的PrintBTNode(元结)
{
如果($)节点!= NULL){
PrintBTNode($节点->左右);
回波$节点>数据;
PrintBTNode($节点-> rchild);
}
}
运行结果:
输入一个字符串
a(b(c,d),g(f))
以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持。
两个叉树节点
类BTnode {
公开数据;
公众左右美元= null;
公共rchild美元= null;
公共功能__construct($数据){
此数据;
}
}
然后建造两棵叉树。
函数的CreateBTNode($根,字符串str)
{
strarr美元= str_split($str);
$堆栈{ };
$ = NULL;
$顶部= 1;
$ = $ j = 0;
$ = null;
foreach(strarr美元美元,CH){
开关($ CH){
案例':
美元+;
array_push(合栈,P);
$ k=1;
打破;
案例':
array_pop($堆栈);
打破;
案例,:
$ k=2;
打破;
违约:
P =新的BTnode($ CH);
如果($根= = null){
$ root = $ P;
{人}
开关($ k){
案例1:
端(合栈)->左右= P;
打破;
案例2:
端(合栈)-> rchild = P;
打破;
}
}
打破;
}
}
}
这里是一个函数(在中间顺序遍历)中打印一个二叉树:
函数的PrintBTNode(元结)
{
如果($)节点!= NULL){
PrintBTNode($节点->左右);
回波$节点>数据;
PrintBTNode($节点-> rchild);
}
}
运行结果:
输入一个字符串
a(b(c,d),g(f))
以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。