Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <vector>
- using namespace std;
- struct node {
- node* left;
- node* right;
- int value;
- node(int _v = 0) {
- left = NULL;
- right = NULL;
- value = 0;
- value = _v;
- }
- }
- int n, a[3030];
- void add(node* i, int v) {
- if (v < i->value) {
- if (i->left == NULL)
- i->left = new node(v);
- else
- add(i->left, v);
- } else {
- if (i->right == NULL)
- i->right = new node(v);
- else
- add(i->right, v);
- }
- }
- void dfs(node* i) {
- if (i == NULL)
- return;
- dfs(i->right);
- dfs(i->left);
- printf("%i ", i->value);
- }
- int main()
- {
- scanf("%i", &n);
- for (int i = 0; i < n; i++)
- scanf("%i", &a[i]);
- node* root = new node(a[n-1]);
- for (int i = n-1; i >= 0; i--)
- add(root, a[i]);
- dfs(root);
- system("PAUSE");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment