示例#1
0
文件: c402.c 项目: pavelfryz/fit
void BTPreorder (tBTNodePtr RootPtr)  {
/*   ----------
** Prùchod stromem typu preorder implementovaný nerekurzivnì s vyu¾itím funkce
** Leftmost_Preorder a zásobníku ukazatelù. Zpracování jednoho uzlu stromu
** realizujte jako volání funkce BTWorkOut().
**/
  tStackP s;
  SInitP(&s);
  Leftmost_Preorder(RootPtr, &s);
  while(!SEmptyP(&s)){
    RootPtr=STopPopP(&s);
    Leftmost_Preorder(RootPtr->RPtr, &s);
  }
}
示例#2
0
文件: c402.c 项目: klimko/IAL
/**
 * Prechod stromom typu PreOrder implementovany nerekurzivne s vyuzitim funkcie
 * Leftmost_Preorder a zasobniku ukazovatelov.
 * @param RootPtr - koren stromu
**/
void BTPreorder(tBTNodePtr RootPtr)
{
  if(RootPtr != NULL)
  {
    tBTNodePtr temp = NULL;
    tStackP s;

    SInitP(&s);
    Leftmost_Preorder(RootPtr, &s);

    while(!SEmptyP(&s))
    {
      temp = STopPopP(&s);
      Leftmost_Preorder(temp->RPtr, &s);
    }
  }
}