Advertisement
Guest User

Untitled

a guest
Jan 24th, 2018
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4.  
  5. class kulka
  6. {
  7. public:
  8. int v1;
  9. int v2;
  10. kulka*next=NULL;
  11. kulka*right=NULL;
  12. kulka*left=NULL;
  13.  
  14.  
  15. kulka(int v)
  16. {
  17. v1=rand()%100;
  18. v2=v;
  19. }
  20.  
  21.  
  22. void addlist(kulka *nowa) {
  23. if (next) {
  24. if (nowa->v1 < next->v1) {
  25. nowa->next = next;
  26. next = nowa;
  27. }
  28. else next->addlist(nowa);
  29. }
  30. else next = nowa;
  31. }
  32.  
  33. void addtree(kulka*nowa)
  34. { if(nowa->v1 < v1)
  35. {if (left) left->addtree(nowa);
  36. else left=nowa;
  37. } else
  38. { if(right) right->addtree(nowa);
  39. else right=nowa;
  40.  
  41. }
  42.  
  43.  
  44. }
  45.  
  46. void showlist()
  47. {
  48. cout<<v1<<" ";
  49. if(next) next->showlist();
  50.  
  51. }
  52.  
  53. void showtree()
  54. {
  55. if (right) right->showtree();
  56. cout<<v1<<" ";
  57. if(left) left-> showtree();
  58.  
  59. }
  60.  
  61.  
  62.  
  63.  
  64. };
  65. int main()
  66. {
  67. kulka* nowa=NULL;
  68. kulka* lista=NULL;
  69. kulka* drzewo=NULL;
  70. bool flag=true;
  71. int licznik=0;
  72.  
  73. while(flag)
  74. {
  75. nowa= new kulka(15);
  76.  
  77. if (nowa->v1==nowa->v2) flag=false;
  78.  
  79. if(nowa->v1>nowa->v2)
  80. { if(!lista) lista=nowa;
  81. else
  82. if(lista->v1>nowa->v1)
  83. {nowa->next=lista;
  84. lista=nowa;
  85.  
  86. }else lista->addlist(nowa);
  87. }
  88. else
  89. {if(!drzewo) drzewo=nowa;
  90. else drzewo->addtree(nowa);
  91. }
  92.  
  93. licznik++;
  94. }
  95. cout<<"Wykonano " << licznik << "losowań"<<endl;
  96. cout<<"LISTA"<<endl;
  97.  
  98.  
  99. lista->showlist();
  100. cout<<endl<<"DRZEWKO " <<endl;
  101. drzewo->showtree();
  102.  
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement