Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void buildTreeSortedFromArray(BSTree* tree, const int arr[], int size)
- int i;
- if(isEmpty(*tree)==1)
- {
- int mid = arr[size/2];
- insertSorted(&(*tree), mid);
- if(size > 1)
- buildTreeSortedFromArray(&(*tree)->left, arr, size/2);
- }
- else
- for(i=0;i<size/2;i++)
- insertSorted(tree, arr[i]);
- if(isEmpty(*tree) == 1)
- {
- newnode = createNode(data);
- *tree = newnode;
- if(newnode == NULL)
- {
- printf("Kan inte allokera minne!nn");
- exit(1);
- }
- }
- else if ((*tree)->data > data)
- {
- insertSorted(&(*tree)->left, data);
- }
- else if((*tree)->data == data)
- {
- printf("Talet %d finns redan!nn",data);
- system("PAUSE");
- }
- else
- insertSorted(&(*tree)->right, data);
- assert(find(*tree,data) == 1 );// Post-condition: data finns i trädet
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement