Tipo de dados abstratos
Seminário: Tipo de dados abstratos. Pesquise 862.000+ trabalhos acadêmicosPor: daanzika • 30/4/2014 • Seminário • 366 Palavras (2 Páginas) • 1.064 Visualizações
Relativo a um Tipo Abstrato de Dados (TAD), assinale a alternativa incorreta:
A
Abstraída qualquer linguagem de programação, um TAD pode ser visto como um modelo matemático que encapsula um modelo de dados e um conjunto de procedimentos que atuam com exclusividade sobre os dados encapsulados
B
Qualquer processamento a ser realizado sobre os dados encapsulados em um TAD pode ser executado por intermédio de procedimentos externos, ou seja, por meio de procedimentos definidos externamente ao modelo matemático do TAD
A implementação de cada TAD deve ocupar porções bem definidas no programa: uma para a definição das estruturas de dados e outra para a definição do conjunto de algoritmos
D
Qualquer processamento a ser realizado sobre os dados encapsulados em um TAD só poderá ser executado por intermédio dos procedimentos definidos no modelo matemático do TAD
E
Uma coleção de atividades, tais como: inserir, suprimir e consultar; encapsuladas junto com uma estrutura passiva, como um dicionário (conjunto de verbetes), pode ser considerada um TAD
(ENADE 2008) Um programador propôs um algoritmo não-recursivo para o percurso em
preordem de uma árvore binária com as seguintes características:
- Cada nó da árvore binária é representado por um registro com três campos:
chave, que armazena seu identificador; esq e dir, ponteiros para os filhos
esquerdo e direito, respectivamente.
- O algoritmo deve ser invocado inicialmente tomando o ponteiro para o nó
raiz da árvore binária como argumento.
- O algoritmo utiliza push() e pop() como funções auxiliares de
empilhamento e desempilhamento de ponteiros para nós de árvore binária,
respectivamente.
A seguir, está apresentado o algoritmo proposto, em que λ representa o
ponteiro nulo.
Procedimento preordem (ptraiz : PtrNoArvBin)
Var ptr : PtrNoArvBin;
ptr := ptraiz;
Enquanto (ptr ≠ λ) Faça
escreva (ptr↑.chave);
Se (ptr↑.dir ≠ λ) Então
push(ptr↑.dir);
Se (ptr↑.esq ≠ λ) Então
push(ptr↑.esq);
ptr := pop();
Fim_Enquanto
Fim_Procedimento
Com base nessas informações e supondo que a raiz de uma árvore binária com n
nós seja passada
...