有序二叉树的实现(二)

2014-11-23 22:38:39 · 作者: · 浏览: 5
TREE* bstree) { return height (bstree->root); }

测试用例“bt_test.c”

/* 有序二叉树 */
#include 
  
   
#include 
   
     #include "bt.h" /* 测试用例 */ int main (void) { BSTREE bstree; bstree_init (&bstree); bstree_insert (&bstree, 50); bstree_insert (&bstree, 70); bstree_insert (&bstree, 20); bstree_insert (&bstree, 60); bstree_insert (&bstree, 40); bstree_insert (&bstree, 30); bstree_insert (&bstree, 10); bstree_insert (&bstree, 90); bstree_insert (&bstree, 80); /* srand (time (NULL)); int i; for (i = 0; i < 20; ++i) bstree_insert (&bstree, rand () % 1000); */ bstree_travel (&bstree); printf ("%u, %u\n", bstree_size (&bstree), bstree_height (&bstree)); bstree_erase (&bstree, 60); bstree_travel (&bstree); bstree_insert (&bstree, 50); bstree_insert (&bstree, 50); bstree_travel (&bstree); bstree_remove (&bstree, 50); bstree_travel (&bstree); bstree_insert (&bstree, 40); bstree_insert (&bstree, 40); bstree_travel (&bstree); bstree_update (&bstree, 40, 85); bstree_travel (&bstree); printf ("%d, %d\n", bstree_exist (&bstree, 40), bstree_exist (&bstree, 85)); bstree_deinit (&bstree); return 0; }