ESTRUTURA DE DADOS Professor Victor Sotero Estrutura de Dados 1.
Estrutura de Dados (Lista 02)
description
Transcript of Estrutura de Dados (Lista 02)
Estrutura de DadosLista de Exercícios 2
1- Defina conceitualmente a estrutura de dados Lista encadeada
2- Defina conceitualmente a estrutra de dados Lista Duplamente Encadeada
3- Indique as vantagens e desvantagens de utilizar uma lista encadeada dinâmica em detrimento a uma lista estática.
4- Considere a figura abaixo:
O que acontecerá se tentarmos inserir um elemento de valor “28” no início da estrutura ?
5- Crie um cenário hipotético de problema a ser resolvido com a utilização de uma estrutura de lista dinâmica duplamente encadeada. Explique por que esta seria a melhor alternativa exemplificando situações relacionadas a performance e integridade das informações.
6-Considere o seguinte trecho de programa abaixo na linguagem de programação Pascal:
var
p,q,r: tPtNo; // Tipo de dado do tipo Registro contendo um elemento e um ponteiro para o próx elemento
begin
new(r);
r^.Dado:=4;
new(p);
p^.Dado := 7;
new(q);
q^.Dado := 3;
r^.Prox := q;
q^.prox :=p;
p^.prox :=nil;
write(r^.Prox^.dado);
end.
Qual será o valor exibido ao usuário no final do programa?
6- Crie um cenário hipotético de problema a ser resolvido com a utilização de uma estrutura de lista simplesmente encadeada dinâmica. Explique por que esta seria a melhor alternativa de estrutura, exemplificando situações relacionadas a performance e integridade das informações.
Acerca da estrutura de Lista Encadeada, analise as afirmações abaixo e indique se a mesma é verdadeira ou falsa, justificando a sua resposta.
I- A inserção ou remoção de um elemento na lista não implica na mudança de lugar de outros elementos.
II- É necessário definir, no momento da criação da lista, o número máximo de elementos que esta poderá vir a ter.
III- Se trata, obrigatoriamente, de uma estrutura onde o primeiro elemento a entrar é o primeiro a sair da mesma.
IV- Não é possível ter acesso direto a seus elementos, sem a necessidade de percorrer a lista desde o início.
7- Sendo "Z" o décimo elemento desta lista e "X" e "Y" dois outros elementos que não pertencem à lista, com seus respectivos ponteiros "pZ", "pX" e "pY", considere o trecho de código abaixo e assinale a alternativa correta:
a) Y, logo após o Z, e X, logo após o Y.b) Y, antes do Z, e X, logo após o Z.c) Y, antes do Z, e X, antes do Y.d) X, logo após o Z, e Y, logo após o X.e) X, antes do Z, e Y, logo após o Z.
8- Como denomina- se uma estrutura de dados que possui dois campos: um ponteiro e campo de informação ?
9- Considere o algoritmo abaixo:
Considere que a função criapont(ponteiro) cria e inicializa ponteiros com “NULO”. Qual a saída impressa por esse programa ?
Considere a Lista Duplamente Encadeada Abaixo e responda as questões a seguir:
10- Qual elemento representa a cabeça da lista?
11- Qual elemento representa a cauda da lista?
12-
r^.Dado:=i; r^.Prox := u; r^.Ant := d; write(r^.Prox^.dado);
write(r^.Prox^.dado);
Considerendo o trecho de código acima, quais seriam as saídas apresentadas pelo sistema?
13 -Considere a seguinte implementação abaixo e complete o texto com os termos corretos dentre os apresentados na lista a seguir:
Dados tipo pnodo = nodonodo = registro info : info prox : pnodo fim
// Complete o texto escolhendo dentre os seguintes termos: [Matriz, Duplamente ,Vetor, Registro, Simplesmente, Ponteiro, Pascal]
A estrutura de dados ----------- está sendo utilizada para criar uma Lista ------- Encadeada. Para que a mesma fosse transformada em uma Lista --------- Encadeada, a estrutura em questão deveria ter um campo a mais, o qual representaria um --------, que indicaria o elemento anterior ao elo em questão.