Помните, что это поиск по бинарному дереву, что означает, что у каждого узла есть только два потомка, левый и правый.
(Предполагая, что N означает Null/no node): создайте свое дерево. Первый элемент в вашей входной последовательности является корневым элементом, следующие два назначаются как левый дочерний элемент корня, а затем правый дочерний элемент. Затем с помощью bfs спуститесь по дереву. Если дочерним элементом является N, перейдите к следующему дочернему элементу, если дочерний элемент является значением, затем назначьте следующие два значения во входной последовательности в качестве левого и правого дочерних элементов этого узла. Так далее.
пример:
5,2,11,N,3,7,19,N,N,6,8,N,N,N,N,N,N
Назначить 5 корневым.
Рассмотрим 5 как узел -> это значение, назначьте дочерние элементы:
2,11,N,3,7,19,N,N,6,8,N,N,N,N,N,N / /оставшийся ввод после обработки 5
Назначить 2 левым дочерним элементом.
11,N,3,7,19,N,N,6,8,N,N,N,N,N,N< br/> Назначить 11 правым потомком.
// закончил всю ширину в отделе 0
Рассмотрим 2 как узел -> это значение, назначьте дочерние элементы:
N,3,7,19,N,N,6,8,N,N,N,N,N,N
Назначьте N как левый дочерний элемент.
3,7,19,N,N,6,8,N,N,N,N,N,N
Назначить 3 правым дочерним элементом.
Считайте 11 узлом -> это значение, назначьте дочерние элементы:
7,19,N,N,6,8,N,N,N,N,N,N
Назначьте 7 левым дочерним элементом .
19,N,N,6,8,N,N,N,N,N,N
Назначить 19 правым дочерним элементом.
// завершил всю ширину на глубине 1
/>
Рассматривать N как узел -> не значение, переходить к следующему узлу ширины.
Рассматривать 3 как узел -> это значение, назначать дочерние элементы:
N,N,6,8,N,N, N,N,N,N
Назначить N левым дочерним элементом.
N,6,8,N,N,N,N,N,N
Назначить N правым дочерним элементом.
/>
Рассмотрим 7 как узел -> ... и т. д.
Вы строите дерево, когда анализируете свою входную строку, и используете поиск в ширину, чтобы добраться до следующего листа в этом построенном дереве, если оно имеет допустимое значение, то оно получает следующие два элемента в вашей входной строке как левый и правильные дети.
person
Smiley
schedule
28.10.2017