Buscar

1ª lista de exercícios AED

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1ª Lista de Exercícios – Algoritmos e Estruturas de Dados I 
Profa Dra Mariá C. V. Nascimento 
 
1) Quais as vantagens de se programar com TADs? 
2) Considere dois programas envolvendo um cadastro de funcionários. O programa A foi 
construído de acordo com os princípios de TAD. Já o programa B não. Diferencie o 
programa A do programa B. 
3) Qual a diferença entre alocação sequencial e alocação encadeada? 
4) Especifique um problema que é melhor de ser resolvido com uma representação 
estática e sequencial e outro que seja melhor resolvido com uma representação 
dinâmica e encadeada. Justifique. 
5) O que significa alocação sequencial de memória para um conjunto de elementos? 
6) O que significa alocação estática de memória para um conjunto de elementos? 
7) Quais as vantagens de se utilizar alocação encadeada para um conjunto de elementos? 
Quais as possíveis desvantagens? 
 
8) Sabe-se que um número complexo é escrito da forma x + iy, onde i2= -1, sendo x a sua 
parte real e y a parte imaginária, ambas representadas por valores reais. Crie um Tipo 
Abstrato de Dados (TAD) que represente os números complexos, e que inclua 
procedimentos de: 
a) Adição(A,B, soma) – soma dois números complexos; 
b) Subtração(A, B, sub) – subtrai dois números complexos; 
c) Multiplicação(A, B,mult) – multiplica dois números complexos; 
d) Divisão(A,B,div)- divide dois números complexos; 
e) Criar um numero complexo(A,b,c) – cria número complexo onde os valores de x e y 
são definidos; 
 
Utilizem a definição do tipo: 
typedef struct{ 
 float parte_real; 
 float parte_imaginária; 
}complexo; 
 
9) Crie o TAD Lista Linear Ordenada (pelo campo chave), tal que sua implementação 
sejaencadeada dinâmica, e inclua procedimentos/funções para: 
a) Verificar se uma lista está ordenada ou não (a ordem pode ser crescente ou 
decrescente). 
b) Fazer uma cópia da lista L1 em uma outra lista L2. 
c) Fazer uma cópia da lista L1 em outra L2, eliminando os elementos repetidos. 
d) Inverter uma lista L1 colocando o resultado em L2. 
e) Intercalar duas listas, L1 e L2, gerando uma lista L3. Considere que L1, L2 e L3 estão 
ordenadas. 
f) Dada uma lista L1, gerar uma lista L2 onde cada registro contém dois campos de 
informação: elem contém um elemento de L1 e count contém quantas vezes este 
elemento apareceu em L1. 
g) Assumindo que os elementos de uma lista L1 são inteiros positivos, fornecer os 
elementos que aparecem o maior e o menor número de vezes (forneça os 
elementos e o número de vezes correspondente).

Outros materiais