Geral
Estruturas de Dados
Semana 5
0
Questão
Considere a implementação da classe BinarySearchTree em C++ e o método insert utilizado para incluir um novo aluno na árvore binária de busca:
void insert(const Aluno& aluno) {
root = insert(root, aluno);
}
TreeNode* insert(TreeNode* node, const Aluno& aluno) {
if (node == nullptr) {
return new TreeNode(aluno);
}
if (aluno.getRA() < node->aluno.getRA()) {
node->left = insert(node->left, aluno);
} else if (aluno.getRA() > node->aluno.getRA()) {
node->right = insert(node->right, aluno);
}
return node;
}
I. O método insert insere um novo aluno na árvore binária de busca comparando o RA do aluno a ser inserido com o RA dos nós existentes na árvore.
PORQUE,
II.se o RA do aluno a ser inserido é menor que o RA do nó atual, o método insere o aluno na subárvore direita; caso contrário, insere na subárvore esquerda.
A respeito dessas asserções, assinale a alternativa correta.
void insert(const Aluno& aluno) {
root = insert(root, aluno);
}
TreeNode* insert(TreeNode* node, const Aluno& aluno) {
if (node == nullptr) {
return new TreeNode(aluno);
}
if (aluno.getRA() < node->aluno.getRA()) {
node->left = insert(node->left, aluno);
} else if (aluno.getRA() > node->aluno.getRA()) {
node->right = insert(node->right, aluno);
}
return node;
}
I. O método insert insere um novo aluno na árvore binária de busca comparando o RA do aluno a ser inserido com o RA dos nós existentes na árvore.
PORQUE,
II.se o RA do aluno a ser inserido é menor que o RA do nó atual, o método insere o aluno na subárvore direita; caso contrário, insere na subárvore esquerda.
A respeito dessas asserções, assinale a alternativa correta.