Advertisement
Guest User

Untitled

a guest
Feb 18th, 2018
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include "memory"
  4.  
  5. struct node{
  6. std::shared_ptr<node> left;
  7. std::shared_ptr<node> right;
  8. int value;
  9. };
  10.  
  11. void inorder(std::shared_ptr<node> ptr){
  12. if(ptr != nullptr){
  13. inorder(ptr->left);
  14. std::cout<<ptr->value<<" ";
  15. inorder(ptr->right);
  16. }
  17. }
  18.  
  19. void addtotree(std::shared_ptr<node>& bst, int v){
  20. if(bst){
  21. if(bst->v >value){
  22. addtotree(bst->left,value);
  23. }
  24. else if(bst->v<value){
  25. addtotree(bst->right,value);
  26. }
  27. }
  28. else{
  29. bst = std::shared_ptr<node>(value);
  30. }
  31. }
  32.  
  33. int main(){
  34. int n;
  35. std::shared_ptr<node> root{};
  36. std::cout<<"Podaj kolejne wartosci nieujemne dodawane do drzewa; koniec representuje -1.";
  37. std::cin >> n;
  38. while (n != -1){
  39. addtotree(root, n);
  40. std::cin>> n;
  41.  
  42. }
  43. inorder(root);
  44. getchar();
  45. return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement