Громадянам України

Як обійти дерево масиву n?

Упорядкований обхід N-арного дерева

  1. Рекурсивно відвідайте першу дитину.
  2. Рекурсивно відвідайте другу дитину.
  3. …..
  4. Рекурсивно відвідати передостаннього дочірнього елемента.
  5. Роздрукуйте дані у вузлі.
  6. Рекурсивно відвідати останнього дочірнього елемента.
  7. Повторюйте описані вище кроки, доки не відвідаєте всі вузли.

Двома класичними методами обходу дерева є пошук у ширину (bfs), коли вузли на тому самому рівні або на відстані від кореня відвідуються перед переходом до наступного рівня; і пошук у глибину, коли відвідуються всі вузли гілки або один заданий шлях від кореня до листка перед переходом до наступного…

Що таке обхід дерева?

  • Для Inorder ви переходите від лівого піддерева до кореня, а потім до правого піддерева.
  • Для попереднього замовлення ви переходите від кореня до лівого піддерева, а потім до правого піддерева.
  • Для пост-замовлення ви переходите від лівого піддерева до правого піддерева, а потім до кореня.

Попередній обхід загального дерева спочатку відвідує корінь дерева, потім виконує попередній обхід кожного піддерева зліва направо. Постпорядковий обхід загального дерева виконує постпорядковий обхід піддерев кореня зліва направо, а потім відвідує корінь.

Програма на C для обходу масиву

  1. Почніть цикл від 0 до N-1, де N — розмір масиву. for(i = 0; i < N; i++)
  2. Доступ до кожного елемента масиву за допомогою arr[index]
  3. Роздрукуйте елементи.