该树是否由tsearch()平衡树创建?

Pri*_*m51 5 c binary-tree

我正在使用tsearch()创建一个二进制文件。是否自动创建了平衡的树。如何验证树是平衡的还是不平衡的。

pad*_*ddy 2

您可以通过调用tsearch值的有序列表,然后调用twalk,提供打印出树深度的操作来进行验证。如果没有发生树排序,则有序插入将创建一个列表而不是树,并且您将输出升序的深度值。

void print_depth( const void *nodep, const VISIT which, const int depth )
{
    if( which == preorder || which == leaf ) printf( "%d\n", depth );
}

twalk( root, print_depth );
Run Code Online (Sandbox Code Playgroud)