Печатать листовые узлы в двоичном дереве слева направо, используя один стек

Опубликовано: 23 Января, 2022

Учитывая двоичное дерево, задача состоит в том, чтобы распечатать все листовые узлы данного двоичного дерева слева направо. То есть узлы должны быть напечатаны в том порядке, в котором они появляются слева направо в данном дереве.

Примеры:

Вход : 
           1
          / 
         2 3
        /  / 
       4 5 6 7
Выход: 4 5 6 7

Вход :
            4
           / 
          5 9
         /  / 
        8 3 7 2
       / / 
      12 6 1
Выход: 12 3 7 6 1

Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

Мы уже обсуждали итерационный подход с использованием двух стеков.

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

Ниже представлена реализация описанного выше подхода:

Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции DSA с помощью самостоятельного курса DSA по приемлемой для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .

Если вы хотите посещать живые занятия с отраслевыми экспертами, пожалуйста, обращайтесь к Geeks Classes Live и Geeks Classes Live USA.