Exemplo n.º 1
0
int BSTHeight (tBSTNodePtr NodePtr, bool IsRoot)
{
	/* Pokud je strom prazdny */
	if ( NodePtr == NULL )
	{
		return -1 ;
	}

	/* Pokud strom prazdny neni */
	else
	{
		/* Rekurze pro levy a pravy podstrom */
		int l_height = BSTHeight ( NodePtr -> LPtr , TRUE ) ;
		int r_height = BSTHeight ( NodePtr -> RPtr , TRUE ) ;

		/* Vybrani nejdelsi cesty */
		if ( l_height > r_height )
		{
			return ( l_height + 1 ) ;
		}
		else
		{
			return ( r_height + 1 ) ;
		}
	}
}
Exemplo n.º 2
0
int test_BSTHeight(tBSTNodePtr TempTree)		{
	solved=TRUE;
	int vyska = FALSE;
    vyska = BSTHeight(TempTree, TRUE);
	if (!solved)	{
		printf("Operace BSTHeight() nebyla implementovana \n");
		return(FALSE);
	}
	else	{
        if (vyska == -1) {
            printf("Strom je prazdny. Vyska neni definovana!\n");
        } else {
            printf("Vyska stromu je %d\n", vyska);
        }
        printf("=================================================\n");
		return(TRUE);
	}
}