Buscar

PROVA ESTRUTURA DE DADOS AV PARCIAL

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 4 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

Prévia do material em texto

ŀ ESTRUTURA DE DADOS Desempenho: 10,0 de 10,0 1a Questão (Ref.: 201504071471) Pontos: 1,0 / 1,0 As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória. Pilha Encadeada Lista Sequencial Pilha Sequencial Lista Encadeada Fila Sequencial 2a Questão (Ref.: 201504134878) Pontos: 1,0 / 1,0 Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução assinale a alternativa que representa a resposta final. cin >> a; cin >> b; cin >> c; 
cin >> d; 
 
cout << a; 
cout << b; 
cout << c; 
cout << d; 
 
cout << d; 
cout << c; 
cout << b; 
cout << a; 
 
 
Após a impressão dos valores pela ordem teremos duas pilhas. 
 
Após a impressão dos valores pela ordem teremos duas filas. 
 
Após a impressão dos valores pela ordem teremos uma fila e um grafo. 
 Após a impressão dos valores pela ordem teremos uma fila e uma pilha. 
 
Após a impressão dos valores pela ordem teremos uma pilha e uma fila. 
 
 
 
 3a Questão (Ref.: 201503457941) Pontos: 1,0 / 1,0 
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder armazenar 
valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e globais. Sendo 
assim, qual das situações abaixo representa melhor o conceito das variáveis globais. 
 
 
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta variável em 
outra função, onde tambem está declarada a variável 'Y', será acusado um erro de compilação. 
 Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser apresentado 
 �em qualquer outra função do programa. Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao tentar chamar esta variável em outra função é mencionado um warning. Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome apresentando o mesmo valor. Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor poderemos imprimir esta variável em qualquer outra função do programa mostrando o valor atribuído na função "mostra". Gabarito Comentado. 4a Questão (Ref.: 201503457937) Pontos: 1,0 / 1,0 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; } Retorna -1 se o valor de n foi encontrado. Retorna -1 se o valor de vl estiver dentro de v. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna o valor de vl se o valor n foi encontrado. Retorna a posição de v se o valor vl foi encontrado. 
 Gabarito Comentado. 
 
 
 
 
 5a Questão (Ref.: 201504027777) Pontos: 1,0 / 1,0 
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob 
uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras 
estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda 
que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de 
forma correta a media 6.0 para o quarto elemento deste vetor. 
 
 
vet[3].aluno=6.0; 
 
aluno[3].media=6.0; 
 
aluno[3].10=6.0; 
 vet[3].media=6.0; 
 
aluno[10]=6.0; 
 
 
 
 6a Questão (Ref.: 201503662616) Pontos: 1,0 / 1,0 
Com relação à struct, é correto afirmar que : 
 
 � A struct é sempre definida dentro da main. Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de tipos diferentes ou não. Cada elemento da struct é chamado componente. Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados distinto de outro campo. Gabarito Comentado. 7a Questão (Ref.: 201503457936) Pontos: 1,0 / 1,0 Os algoritmos de busca são muito utilizados em estrutura de dados. Sendo assim, o algoritmo que realiza a busca em vetores e que exige acesso aleatório aos elementos do mesmo e que parte do pressuposto de que o vetor está ordenado e realiza sucessivas divisões do espaço de busca comparando o elemento que se deseja com o elemento do meio do vetor, é chamado de: Pesquisa binária Tabela Hash Pesquisa ordenada Pesquisa sequêncial Pesquisa de seleção 
 Gabarito Comentado. 
 
 
 
 
 8a Questão (Ref.: 201504043034) Pontos: 1,0 / 1,0 
Em relação à classificação do método de ordenação, assinale abaixo aquele que, durante o processo de 
ordenação, só usa a memória principal: 
 
 
Ordenação Eficiente 
 
Ordenação Simples 
 
Ordenação Simples Externa 
 Ordenação Interna 
 
Ordenação Externa 
 
 
 
 9a Questão (Ref.: 201503662665) Pontos: 1,0 / 1,0 
 � for (int i = 0; i < n; i++) cout << L.matricula << " " << L.nome << endl; for (int i = 0; i < n; i++) cout << L.matricula[i] << " " << L.nome[i] << endl; for (int i = 0; i < n; i++) cout << L[i] << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome[30] << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome << endl; Gabarito Comentado. 
 
 10a Questão (Ref.: 201504021631) Pontos: 1,0 / 1,0 
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a 
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em 
mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode crescer. 
 
 
Lista Não Linear 
 
Lista Linear Não Sequencial 
 
Lista Linear de Alocação de Memória 
 
Lista Linear Não Alocada 
 Lista Linear Sequencial

Continue navegando

Outros materiais