|
{ if(NULL != root) { printf("%d\t",root->key); PreOrderTraverse(root->lchild); PreOrderTraverse(root->rchild); } } int main(int argc, char *argv[]) { int data[] = {1, 5, 7, 4, 3, 2, 11, 9, 10,100}; BSTNode* root; root = createAVL(data, sizeof(data)/sizeof(data[0])); printf("\n++++++++++++++++++++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(5, root); printf("\n++++++++delete 5++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(3, root); printf("\n++++++++delete 3++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(1, root); printf("\n++++++++delete 1++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(7, root); printf("\n++++++++delete 7++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(4, root); printf("\n++++++++delete 4++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); root = deleteNode(2, root); printf("\n++++++++delete 2++++++++++\n"); InOrderTraverse(root); printf("\n"); PreOrderTraverse(root); printf("\n"); destroyAVL(root); }
|