本文整理汇总了C++中Tree::InsertChild方法的典型用法代码示例。如果您正苦于以下问题:C++ Tree::InsertChild方法的具体用法?C++ Tree::InsertChild怎么用?C++ Tree::InsertChild使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tree
的用法示例。
在下文中一共展示了Tree::InsertChild方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, const char * argv[])
{
//测试树
cout<<"开始测试树\n";
Tree<char> t;
t.InsertChild('A');
for (int i = 0; i < 3; i ++) {
t.Root();
t.InsertChild('B'+i);
}
for (int i = 0; i < 2; i++) {
t.Root();
t.FirstChild();
t.InsertChild('E'+i);
}
t.DisplayTree();
return 0;
}
示例2: MakeBalance
void Tree::MakeBalance(int remain) {
if( remain == 0 ) return;
if( children.size() == 0 ) {
Tree * root = this;
int label = root->label;
for(int i = 0; i < remain; ++i ) {
root->InsertChild(shared_ptr<Tree>(new Tree()));
root->SetLabel(-1);
root = root->children[0].get();
}
root->SetLabel(label);
}
else {
for(int i = 0; i < children.size(); ++i)
children[i]->MakeBalance(remain-1);
}
}