int CountNode( NODE* root ) { if (root == nullptr) { return 0; } int result = 0; result = CountNode( root->leftChild ) + CountNode( root->rightChild ) + 1; delete root; return result; }
int main( void ) { NODE* rootNode = new NODE; int nodeTheNum = 5; for ( int i = 0; i < nodeTheNum; ++i ) { InsertTree( rand() % 100, rootNode ); } int calcedNodeNum = 0; calcedNodeNum = CountNode( rootNode ); printf_s( "%d", calcedNodeNum ); getchar(); return 0; }
int CountNode(NODE * node) { if(node ==NULL) return 0; return (CountNode(node->left)+CountNode(node->right)+1); }