macrofish

strom

Apr 29th, 2013
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. struct uzel
  2. {
  3.     int cislo;
  4.     uzel *pravy;
  5.     uzel *levy;
  6. };
  7. class strom
  8. {
  9. public:
  10.     strom();
  11.     ~strom();
  12.     void add(int);  //obalka
  13.     void neco(int);
  14. private:
  15.     void insert(uzel *&koren,int c);
  16.     void smazani(uzel * koren);
  17.     uzel * root;   
  18. };
  19. strom::strom()
  20. {
  21.     root=NULL;
  22. }
  23. strom::~strom()
  24. {
  25.     smazani(root);
  26. }
  27. void strom::add(int c)
  28. {
  29.     insert(root,c);
  30. }
  31. void strom::insert(uzel *&koren,int c)
  32. {
  33.     if(koren==NULL) //ukoncovaci podminka rekurze
  34.     {
  35.         koren=new uzel;
  36.         koren->cislo=c;
  37.         koren->pravy=NULL;
  38.         koren->levy=NULL;
  39.     }
  40.     if(c > koren->cislo)//koren 10 
  41.     {
  42.         insert(koren->pravy,c);
  43.         return;
  44.     }
  45.     else
  46.     {
  47.         insert(koren->levy,c);
  48.         return;
  49.     }
  50.        
  51. }
  52. void strom::smazani(uzel *koren)
  53. {
  54.     if(koren!=NULL)
  55.     {
  56.         smazani(koren->levy);
  57.         smazani(koren->pravy);
  58.         delete koren;
  59.     }
  60. }
  61. void strom::neco(int c) //10
  62. {
  63.     root=new uzel;
  64.     root->cislo=c;
  65.     root->levy=NULL;
  66.     root->pravy=NULL;
  67.     cout<<root->levy->levy->pravy->cislo
  68. }
  69. int main()
  70. {
  71.     strom tree;
  72.     tree.add(15);
  73.     tree.add(20);
  74.    
  75.    
  76.  
  77. }
Advertisement
Add Comment
Please, Sign In to add comment