Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using std::endl;
- using std::cout;
- using std::cin;
- int counter;
- int* arr;
- int n;
- typedef struct Node *po;
- struct Node
- {
- int Data;
- po Left;
- po Right;
- };
- po nibd(int left, int right)
- {
- po eto;
- if (right - left < 0) return NULL;
- int mid = (left + right) / 2;
- eto = new Node;
- eto->Data = arr[mid];
- eto->Left = nibd(left, mid - 1);
- eto->Right = nibd(mid + 1, right);
- return eto;
- }
- int main()
- {
- while (cin >> n)
- {
- counter++;
- arr = new int[n];
- // Обход на дървото
- for (int i = 0; i < n; i++)
- {
- arr[i] = i;
- }
- // До тук имаме нареден масив
- // Рекурсия; от 0 до counter
- nibd(0, n);
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment