Questão A
Considere uma árvore binária cujos nós têm um campo chave de um tipo linearmente ordenado, um tipo (como int, char, string, etc.) que admite comparação.
Uma árvore binária deste tipo é de busca se cada nó p tem a seguinte propriedade: a chave de p é (1) maior ou igual à chave de qualquer nó na subárvore esquerda de p e (2) menor ou igual à chave de qualquer nó na subárvore direita de p.
Em outras palavras, se p é um nó qualquer então:
e->chave ≤ p->chave ≤ d->chave
Questões
Considerando-se uma árvore ordenada, ou árvore binária de busca, sem balanceamento, faça:
a) A partir de uma árvore vazia, insira os seguintes nós na árvore, na ordem apresentada:
15, 18, 3, 22, 8, 1, 12, 4
Mostre a árvore resultante.
b) Qual é o caminho do nó 4?
c) Remova o nó de valor 3. Como ficará a árvore resultante? Explique sua resposta.
d) Faça outra árvore, inserindo os seguintes nós:
2, 5, 8, 10, 12
Que tipo de árvore é essa?
Mostre a árvore resultante.
Trilha de Aprendizado:
· Leia o capítulo 7 do livro texto.
· Assista as videoaulas 6-1, 6-2, 7-1 e 7-2.
· Faça os “exercícios de fixação” das aulas correspondentes.
Dicas:
· prefira desenhar a árvore utilizando a Representação Hierárquica, mas se você tiver dificuldade em postar imagens, não se esqueça de que ela pode ser representada de outras formas: Diagrama de Barras, por Níveis, por Aninhamento, etc.
Soluções para a tarefa
Respondido por
0
struct StructFaixa{
int velocidadedafaixa = 100;
int maximoDeCarros = 10;
int carros[10];
int ini, fim;
//Lista / vetor / array carros;
};
struct Carro {
int velocidade;
};
StructFaixa faixa1, faixa2;
int main() {
faixa1.velocidadedafaixa = 80;
// insere 10 carros em structFaixa1, usando uma outra função
int continuarSimulacao = 1;
while (continuarSimulacao == 1) {
// troca alguns carros de faixa. Por exemplo:
int troca = rand();
if (troca = 5) {
Carro carro = RemoverCarro(faixa1.carros, 10);
AdicionarCarro(faixa2.carros);
print_f("Faixa1 carros: %d" carros);
print_f("Faixa2 carros: %d" carros);
}
// pergunta ao usuário se continua a simulação, mudando a variavel continuarSimulacao
}
}
}
void RemoverCarro()
{
n = faixa1.carro[faixa1.ini]
faixa1.fim++;
}
void AdicionarCarro(int n)
{
faixa1.fim++;
faixa1.carro[faixa1.fim] = n
}
RainhaMedusa:
acho q não é isso
a) (15 (3(1)(8(4)(12)) )(18(22)))
b) 15,3,8,4.
c)(15 (1(8(4)(12)) )(18(22))) Substuição.
d)é uma arvore degenerada. (2( 5(8(10(12)))))
Respondido por
0
Resposta:
estou na mesma questão querendo uma resposta também,
Explicação:
Perguntas interessantes