Geral
Estruturas de Dados
Semana 5
0
Questão
Considere a implementação da classe BinarySearchTree em C++ e os métodos para imprimir o conteúdo de uma árvore binária de busca em pré-ordem (pre-order), in-ordem (in-order) e pós-ordem (post-order):
void preOrderPrint() const {
preOrderPrint(root);
}
void preOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
node->aluno.display();
preOrderPrint(node->left);
preOrderPrint(node->right);
}
void inOrderPrint() const {
inOrderPrint(root);
}
void inOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
inOrderPrint(node->left);
node->aluno.display();
inOrderPrint(node->right);
}
void postOrderPrint() const {
postOrderPrint(root);
}
void postOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
postOrderPrint(node->left);
postOrderPrint(node->right);
node->aluno.display();
}
I. O método preOrderPrint percorre a árvore binária de busca imprimindo primeiro o nó raiz, seguido pela subárvore esquerda e, por último, a subárvore direita.
PORQUE
II. O método postOrderPrint realiza o percurso da árvore binária de busca imprimindo os nós na seguinte ordem: subárvore esquerda, subárvore direita e, finalmente, o nó raiz.
void preOrderPrint() const {
preOrderPrint(root);
}
void preOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
node->aluno.display();
preOrderPrint(node->left);
preOrderPrint(node->right);
}
void inOrderPrint() const {
inOrderPrint(root);
}
void inOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
inOrderPrint(node->left);
node->aluno.display();
inOrderPrint(node->right);
}
void postOrderPrint() const {
postOrderPrint(root);
}
void postOrderPrint(TreeNode* node) const {
if (node == nullptr) {
return;
}
postOrderPrint(node->left);
postOrderPrint(node->right);
node->aluno.display();
}
I. O método preOrderPrint percorre a árvore binária de busca imprimindo primeiro o nó raiz, seguido pela subárvore esquerda e, por último, a subárvore direita.
PORQUE
II. O método postOrderPrint realiza o percurso da árvore binária de busca imprimindo os nós na seguinte ordem: subárvore esquerda, subárvore direita e, finalmente, o nó raiz.