2015-03-30 4 views
-3

Я написал древовидный код. И я хочу вызвать его любым порядком в любой функции любым вызовом функции. то есть, если у меня естьКак посчитать вызовы функций для обхода дерева

void inorder() { 
    inorder(); 
    display(); 
    preorder(); 
} 

void preorder() { 
    inorder(); 
    display() ; 
    postorder(); 
} 

void postorder() { 
    postorder(); 
    display(); 
    postorder(); 
} 

В этом я назвал первый inorder затем снова inorderpreorder затем также, как я могу отобразить функцию, что я назвал последовательностью?

+2

Этот вопрос не читается и невозможно понять в текущей форме. Пожалуйста, подумайте, как вы можете это изменить. –

ответ

0

Я стараюсь изо всех сил. Извините меня, если я неправильно понял.

Вы имеете в виду, что хотите увидеть, как функции вызываются в древовидной структуре. Затем вы можете определить дерево strucutre для хранения имени функции. Сделайте конструкцию глобально доступной или передайте в качестве параметра в каждой функции. Каждый раз, вы вызываете функцию, вы создаете узел дерева и помещаете его дочерние элементы (здесь внутренние называемые fucntions), используя связанный список. Процесс будет похож на DFS, вам нужно только четко определенная конструкция.

Смежные вопросы