Buscar

AV1 2013 - ESTRUTURA DE DADOS

Prévia do material em texto

Fechar 
 
Avaliação: CCT0260_AV1_201202157891 » ESTRUTURA DE DADOS 
Tipo de Avaliação: AV1 
Aluno: 201202157891 - PEDRO ALEXANDRE CHAGAS DOS SANTOS 
Professor: JANE TAVARES ALVAREZ DA SILVA Turma: 9004/AD 
Nota da Prova: 6,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 26/04/2013 10:10:31 
 
 
 1a Questão (Cód.: 27780) Pontos: 0,5 / 0,5 
Marque a afirmativa correta para a "inserção incremental". 
 
 É um tipo de ordenação por intercalação 
 
Os pivôs são escolhidos aleatoriamente. 
 
É um tipo de sequenciação por intercalação. 
 
A técnica é boa quando os dados ficam uniformemente distribuídos entre os seus compartimentos. 
 Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos. 
 
 
 
 2a Questão (Cód.: 30946) Pontos: 1,0 / 1,0 
O registro de ativação de uma sub-rotina é o conjunto das informações que devem/precisam ser alocadas em 
memória. Assinale abaixo a única opção que representa a composição destas informações. 
 
 ( ) endereço de retorno / variáveis locais / parâmetros passados 
 ( ) endereço de retorno / valor de retorno / endereço de ponteiro 
 
( ) endereço de ponteiro / variáveis locais / endereço inicial 
 
( ) variáveis locais / valor de retorno / endereço de ponteiro 
 
( ) parâmetros passados / endereço inicial / endereço de retorno 
 
 
 
 3a Questão (Cód.: 27582) Pontos: 0,0 / 0,5 
Considere: 
I - Os algoritmos de busca binária e de busca seqüencial executam processamento repetitivo. 
II - Os algoritmos de busca binária e de busca seqüencial utilizam a técnica de recursão. 
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior. 
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em: 
 
 (C) I e II, apenas. 
 
(B) II, apenas. 
 
(E) I e IV, apenas. 
 
(D) I, II, III e IV. 
 (A) I, apenas. 
 
 
 
 4a Questão (Cód.: 31182) Pontos: 1,0 / 1,0 
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a 
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos 
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre 
os elementos. O trecho de código abaixo descreve o algoritmo chamado: 
algoritmo ordena (int a[], int n){ 
 Para i da primeira posição até a penúltima faca 
 mínimo = i 
 para j da posição seguinte a i até a ultima posição faça 
 se (a[j] < a[mínimo]) 
 mínimo =j; 
 fim para 
 fim para 
 troca(a[mínimo],a[i]); 
fim algoritmo 
 
 
MergeSort 
 
Bolha 
 Seleção 
 
Inserção 
 
QuickSort 
 
 
 
 5a Questão (Cód.: 77785) Pontos: 1,0 / 1,0 
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está 
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave) 
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com 
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca 
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a 
busca continua na metade anterior do vetor. 
A descrição apresentada trata-se do método denominado busca ...... 
 
 
randômica. 
 
linear. 
 binária. 
 por contagem. 
 
por comparação. 
 
 
 
 6a Questão (Cód.: 28107) Pontos: 1,0 / 1,0 
Tanto a operação TOP (acessa topo), quanto à operação POP (remover), permite acessar o último elemento 
armazenado em uma Pilha. Quanto à diferença entre ambas as operações em relação ao estado da Pilha é 
correto afirmar: 
 
 
Ambas alteram o estado da Pilha 
 Somente a operação POP altera o estado da Pilha 
 
Nenhuma das operações altera o estado da Pilha 
 
Somente a operação TOP altera o estado da Pilha 
 A operação TOP remove um elemento e altera o estado da Pilha 
 
 
 
 7a Questão (Cód.: 95244) Pontos: 1,0 / 1,0 
Sobre estrutura de dados, identifique o que está correto afirmar. 
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e 
retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um 
elemento é adicionado ou retirado seu topo é alterado. 
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e 
pelos compiladores, na passagem de parâmetros para as funções. 
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo 
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos. 
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o 
elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos 
sequencialmente como diretamente. 
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo 
princípio LIFO (last in first out). 
 
 I, II e III. 
 
II, III, IV e V. 
 
I, III e V. 
 I, III, IV e V. 
 
II, IV e V. 
 
 
 
 8a Questão (Cód.: 19660) Pontos: 0,5 / 0,5 
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente 
especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está 
expressa na alternativa: 
 
 É um modo particular de armazenamento e organização de dados em um computador de modo que 
possam ser usados de modo eficiente. 
 
É um modo de utilização de dados nos programas de computador. 
 
É um modo de distribuição e organização de dados em uma rede de computador de modo que possam 
ser usados de modo eficiente. 
 
São os nomes dados as variáveis na montagem de uma rotina. 
 
É um modo de deleção de dados em um computador. 
 
 
 
 9a Questão (Cód.: 19664) Pontos: 0,5 / 0,5 
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de: 
 
 
ponteiro 
 
loop 
 
array 
 pilha 
 fila 
 
 
 
 10a Questão (Cód.: 28128) Pontos: 0,0 / 1,0 
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){ 
 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; 
} 
 
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; 
 } 
} 
 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; 
 } 
 } 
} 
} 
 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; 
} 
 
 
 
Período de não visualização da prova: desde 16/04/2013 até 03/05/2013.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes