Buscar

AV ESTRUTURA DE DADOS 2014.1

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

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
Você viu 3, do total de 6 páginas

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

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
Você viu 6, do total de 6 páginas

Prévia do material em texto

Fechar 
 
Avaliação: CCT0260_AV_201307002641 (AG) » ESTRUTURA DE DADOS 
Tipo de Avaliação: AV 
Aluno: 201307002641 - LUIZ OTAVIO DE OLIVEIRA SANTOS 
Professor: JANE TAVARES ALVAREZ DA SILVA Turma: 9004/AC 
Nota da Prova: 2,5 Nota de Partic.: 1 Data: 11/06/2014 16:21:41 
 
 
 1a Questão (Ref.: 201307239218) Pontos: Sem Correç. / 1,5 
No dia 20 de fevereiro de 2002(20022002), vivenciou-se um momento que só 
acontecerá novamente em 21 de dezembro de 2112(21122112). 
 
Acredito que muitas pessoas não tinham familiaridade com o termo capicua que, 
segundo o dicionário do Aurélio, se aplica a um grupo de algarismos que lidos da 
esquerda para direita, ou da direita para esquerda, representam o mesmo número. 
 
Construa uma função que receba um número inteiro longo e retorne o número escrito 
de trás para frente. Exemplo: recebe 123 e retorna 321. 
 
 
 
 
Resposta: 
 
 
Gabarito: 
long long int espelha(long long int num ) //pode ser long long 
{ 
 long long int espelhado=0; //pode ser long long 
 while (num > 0) 
 { 
 espelhado = 10 * espelhado + num % 10; 
 num = num / 10; 
 } 
 return espelhado; 
} 
 
 
 
 2a Questão (Ref.: 201307059175) Pontos: Sem Correç. / 1,5 
Considere uma lista simplesmente encadeada não circular de inteiros e o tipo 
 struct no { 
 int dado; 
 struct no *link; 
 }; 
Faça uma função para inverter a lista e retornar o ponteiro para o início da lista resultante. 
Protótipo : no *inverter(no *ini); //ini aponta para o início da lista 
 
 
 
Resposta: 
 
 
Gabarito: no *inverter ( no *ini) // ini é um ponteiro para o início da lista { no *a, *b, *c; a = ini; b = NULL; 
while (a != NULL) { c = b; b = a; a = a->link; b->link = c; } ini = b; return(ini); } /* fim da função */ 
 
 
 
 3a Questão (Ref.: 201307031033) Pontos: 0,0 / 0,5 
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação 
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque 
corretamente a alternativa que apresenta o código do método de seleção. 
 
 
 
int ordena(float v[], float valor, int n) { 
 int ini = 0, fim = n-1, meio; 
 while (ini >= fim){ 
 meio = ini/2; 
 if (v[meio] == valor) 
 return meio; 
 if (valor < v[meio]) 
 fim = meio -1; 
 else 
 ini = meio+1; 
} 
 void ordena(int v[], int n){ 
int i, j, menor, aux; 
for (j = 0; j < n-1; j++) { 
 for (i = j+1; i < n; i++) { 
 if (v[i] < v[j]) { 
 aux = v[j]; 
 v[j] = v[i]; 
 v[i] = aux; 
 } 
 } 
} 
} 
 void ordena (int v[], int n){ 
 int i, j, aux; 
 for (j = 1; j < n; j++) 
 for (i=j; i > 0 && v[i-1]> v[i]; i--){ 
 aux = v[i-1]; 
 v[i-1] = v[i]; 
 v[i] = aux; 
 } 
} 
 
int ordena(float v[], float valor, int n){ 
 for (int i = 0; i < n; i++) 
 if (v[i] == valor) 
 return i; 
 return -1; 
} 
 
int ordena(float v[], float valor, int n) { 
 int ini = 0, fim = n -1, meio; 
 while (ini <= fim){ 
 meio = (ini + fim)/2; 
 if (v[meio] == valor) 
 return meio; 
 if (valor < v[meio]) 
 fim = meio -1; 
 else 
 ini = meio+1; 
 } 
 return -1; 
} 
 
 
 
 4a Questão (Ref.: 201307030876) Pontos: 0,5 / 0,5 
Com relação as listas lineares sequenciais: 
I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array. 
II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice. 
III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes. 
 
 
 
Apenas a afirmação I está correta. 
 
Apenas as afirmações II está corretas. 
 Apenas as afirmações I e II estão corretas. 
 
Apenas as afirmações I e III estão corretas. 
 
Apenas as afirmações II e III estão corretas. 
 
 
 
 5a Questão (Ref.: 201307031028) Pontos: 0,0 / 0,5 
O processo de rearranjar um conjunto de dados em uma ordem crescente ou decrescente é chamado de 
ordenação. Existem várias técnicas de ordenação, entretanto a técnica que procura o menor valor entre todos 
os elementos do vetor e troca-o pelo primeiro elemento; para os n - 1 elementos restantes, determinação do 
elemento de menor valor e troca pelo segundo elemento e assim sucessivamente, é chamado de: 
 
 
 
Inserção 
 
Hash 
 
Bolha 
 Binária 
 Seleção 
 
 
 
 6a Questão (Ref.: 201307030678) Pontos: 0,5 / 0,5 
 
Ordene a coluna direita de acordo com a da esquerda, associando as características de implementação de 
cada: (Podem existir mais de uma opção à direita para alguma da esquerda) 
 
 
Indique a alternativa correta: 
 
 
 
a - c - a - b - c - a 
 
b - b - a - c - c - c 
 
a - a - a - b - c - b 
 
c - a - a - b - c - b 
 a - b - a - c - c - b 
 
 
 
 7a Questão (Ref.: 201307030994) Pontos: 1,0 / 1,0 
Qual das alternativas a seguir pode definir uma estrutura de fila? 
 
 
 
Entrada de dados pelo início e saída pelo final. 
 Entrada de dados pelo final e saída pelo início. 
 
Entrada e saída de dados pelo final. 
 
Entrada e saída de dados em qualquer local. 
 
Entrada e saída de dados pelo início. 
 
 
 
 8a Questão (Ref.: 201307022573) Pontos: 0,5 / 0,5 
Em relação a estruturas de dados, avalie a correspondência existente entre as estruturas 
de dados Lineares e Não Lineares com suas respectivas coleções de dados. 
 
 
A correta associação entre os elementos das duas tabelas é: 
 
 
 
 
 
 
 
 
 
 
 
 
 a1, b1, c2, d1 
 
a2, b1, c2, d1. 
 
a2, b2, c1, d2. 
 
a1, b1, c2, d2. 
 
a1, b2, c1, d1. 
 
 
 
 9a Questão (Ref.: 201307239240) Pontos: 0,0 / 0,5 
Sabemos que podemos representar uma expressão de três formas, sendo que uma 
delas é chamada de notação polonesa reversa ( pós-fixa). 
Suponha que um professor de Estrutura de Dados desejasse compor a nota do 
bimestre com uma prova e um trabalho oral, usando pesos diferenciados para as 
notas. Sendo assim, usaria a média ponderada como a expressão abaixo. 
 
A única calculadora que encontrou disponível foi uma com representação pós fixa. 
Assinale a alternativa que apresenta a sequência que deveria ser digitada pelo 
professor para conseguir calcular a média de um aluno. 
 
 
 
 / * nota1 peso1 + * nota2 peso2 + peso1 peso2 
 / + * nota1 peso1 * nota2 peso2 + peso1 peso2 
 nota1 peso1 * nota2 peso2 * peso1 peso2 + + / 
 nota1 peso1 nota2 peso2 peso1 peso2 * * + + / 
 nota1 peso1 * nota2 peso2 * + peso1 peso2 + / 
 
 
 
 10a Questão (Ref.: 201307235992) Pontos: 0,0 / 1,0 
Com relação à lista duplamente encadeada, é correto afirmar que : 
 
 
 Não pode haver remoções no meio da lista. 
 Consome menos memória do que uma lista simplesmente encadeada, se 
tivermos uma mesma aplicação. 
 A lista precisa ter sempre um ponteiro apontando para o 1º. nó 
 A lista pode ser percorrida com igual facilidade para a direita ou para a esquerda, 
pois existem dois ponteiros. 
 Não pode ser vazia.

Outros materiais