Logo Passei Direto
Buscar

Estrutura de Dados AV2

User badge image

Enviado por Geraldo Lucas Gomes em

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Avaliação: CCT0174_AV2_201107083061 » ESTRUTURA DE DADOS
Tipo de Avaliação: AV2 
Aluno: 201107083061 - GERALDO LUCAS GOMES 
Professor: ALEXANDRE SOARES ALVES Turma: 9001/AA
Nota da Prova: 3,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 21/11/2012
 1a Questão (Cód.: 58562) Pontos: 1,5 / 1,5
Qual a diferença entre pilha e fila?
 
Resposta: A diferença é que na pilha inserção e remoção de um elemento acontecem sempre na mesma 
extremidade, ja na Fila a inserção aconteça em uma extremidade e remoção na outra.
 
 
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia 
semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura 
semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa 
lógica é chamada de FIFO.
 2a Questão (Cód.: 56270) Pontos: 0,0 / 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: int funcao(float v[], float vl, int n) { for (int i = 0; i < n; i++) if (v[i] == vl) return i; return -1; } 
 
 
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 (Cód.: 27966) Pontos: 0,0 / 0,5
 
Página 1 de 5BDQ Prova
19/12/2012http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2176166&ti...
 
Qual o valor da variável a ao final da execução do trecho de programa a seguir? 
int main() { 
int a, b, *p; 
a=4; 
b = 2; 
p = &a; 
a++; 
*p = a + b; 
(*p)++; 
(*p) += a; 
cout << "\n a = " << a << endl; 
return(0); 
} 
 5
 16
 4
 8
 7
 4a Questão (Cód.: 27620) Pontos: 0,0 / 0,5
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que 
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações: 
ENQUEUE(1) 
ENQUEUE(2) 
DEQUEUE() 
ENQUEUE(3) 
ENQUEUE(4) 
DEQUEUE() 
DEQUEUE() 
ENQUEUE(5) 
Ao final da sequencia, a soma dos elementos de que (Q) será? 
 0
 6
Página 2 de 5BDQ Prova
19/12/2012http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2176166&ti...
 
 
 
 
 9
 5
 15
 5a Questão (Cód.: 27753) Pontos: 1,0 / 1,0
Podemos dizer que estrutura de dados é: 
 O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo. 
 Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente 
determinada. 
 A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma 
solução do problema. 
 É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma 
solução do problema.
 O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações. 
 6a Questão (Cód.: 28126) Pontos: 0,0 / 0,5
As funções em programação permitem que se possa realizar a modularização do código diminuindo assim sua 
complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o tipo de função: 
int funcao (int x){ 
 if(x == 0) 
 return 0; 
else 
 funcao(x-1); 
} 
 Condicional de seleção
 Sequencial
 Igual a zero
 Passagem por referência
 Recursiva
 7a Questão (Cód.: 28144) Pontos: 0,0 / 0,5
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de funções 
que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e marque 
corretamente a alternativa que descreve as funcionalidades desta. 
int funcao(float v[], float vl, int n) 
{ 
 for (int i = 0; i < n; i++) 
 if (v[i] == vl) 
 return i; 
 return -1; 
} 
 Resulta em erro, se o valor de vl não estiver dentro de v.
 Retorna a posição de v se o valor vl foi encontrado.
 Retorna -1 se o valor de n foi encontrado.
 Retorna o valor de vl se o valor n foi encontrado.
 Retorna -1 se o valor de vl estiver dentro de v.
Página 3 de 5BDQ Prova
19/12/2012http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2176166&ti...
 
 
 8a Questão (Cód.: 28131) Pontos: 0,0 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através 
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em 
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar 
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
 Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes.
 Proteção de memória, transferência de dados, estruturas simples.
 Acesso, representação, compartilhamento de memória.
 Transferência de dados, gerenciamento de memória e procedimentos menos intuitivos.
 Previsão de espaço físico, estruturas complexas, procedimentos menos intuitivos.
 9a Questão (Cód.: 27932) Pontos: 1,0 / 1,0
Marque a afirmativa que represente uma separação. 
 Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante. 
 Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da 
necessidade. 
 Intercalar a ordem dos dados da lista do final para o início, atualizando a lista. 
 Organizar os dados da lista em ordem crescente ou decrescente. 
 Alterar a ordem dos dados da lista do final para o início, atualizando a lista. 
 10a Questão (Cód.: 27963) Pontos: 0,0 / 0,5
O resultado de um concurso foi armazenado por um programador em um vetor, onde cada elemento (descrito pela 
struct Candidato) possui a informação da matrícula e nota de cada candidato, conforme descrito a seguir. 
Deseja-se que o vetor com os resultados fique ordenado em ordem decrescente pela nota. O programador pretende 
usar o algoritmo de busca descrito a seguir, porém precisa de ajuda no trecho contendo ********. 
Indique a opção que contém a solução que completa as linhas 1, 3 e 7 do algoritmo. 
... 
struct Candidato { 
 char mat[10]; 
 float nota; 
}; 
... 
1.void ordenaSelecao (******** v[], int n) { 
2. int i, j, maior; 
3. ******** aux; 
4. for (j = 0; j < n-1; j++) { 
5. maior = j; 
6. for (i = j+1; i < n; i++) 
7. if (********) 
8. maior = i; 
9. aux = v[j]; 
10. v[j] = v[maior]; 
11. v[maior] = aux; 
12. } 
13.} 
 1. struct Candidato 3. struct Candidato 7. v[i].nota < v[maior].nota 
 1. int 3. int 7. v[i] < v[maior] 
 1. struct Candidato 3. struct Candidato 7. v[i].nota > v[maior].nota 
 1. float 3. float 7. v[i] < v[maior] 
 1. int 3. int 7. v[i] > v[maior]
Página 4 de 5BDQ Prova
19/12/2012http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2176166&ti...
 
 
 
Página 5 de 5BDQ Prova
19/12/2012http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2176166&ti...

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?