Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include "memory"
- struct node{
- std::shared_ptr<node> left;
- std::shared_ptr<node> right;
- int value;
- };
- void inorder(std::shared_ptr<node> ptr){
- if(ptr != nullptr){
- inorder(ptr->left);
- std::cout<<ptr->value<<" ";
- inorder(ptr->right);
- }
- }
- void addtotree(std::shared_ptr<node>& bst, int v){
- if(bst){
- if(bst->v >value){
- addtotree(bst->left,value);
- }
- else if(bst->v<value){
- addtotree(bst->right,value);
- }
- }
- else{
- bst = std::shared_ptr<node>(value);
- }
- }
- int main(){
- int n;
- std::shared_ptr<node> root{};
- std::cout<<"Podaj kolejne wartosci nieujemne dodawane do drzewa; koniec representuje -1.";
- std::cin >> n;
- while (n != -1){
- addtotree(root, n);
- std::cin>> n;
- }
- inorder(root);
- getchar();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement