Buscar

A5 P8

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

CCT0753_EX_A5_201703294742_V8
 
 
 ESTRUTURA DE DADOS 5a aula
 Lupa 
Vídeo
 
PPT
 
MP3
 
 
Exercício: CCT0753_EX_A5_201703294742_V8 24/06/2018 17:31:56 (Finalizada)
Aluno(a): RICARDO ALEXANDRE KEMMERICH 2018.1 EAD
Disciplina: CCT0753 - ESTRUTURA DE DADOS 201703294742
 
 
Ref.: 201703916054
 1a Questão
__________________________ é 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 Linear Não Sequencial
Lista Linear de Alocação de Memória
 Lista Linear Sequencial
Lista Linear Não Alocada
Lista Não Linear
 
 
 
Ref.: 201703999873
 2a Questão
Considere uma lista com n livros, em que cada livro é modelado pela struct :
 
struct Livro {
 string �tulo, editora, autor;
 float preco;
};
 
A função X abaixo
 
void X (Livro v[ ], int &n, Livro L)
{
 v[n] = L;
 n++;
 cout << "Operação realizada com sucesso.";
}
 
implementa a operação de :
Busca
Ordenação por inserção
 InserçãoFile failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
Subs�tuição
Inicialização
 
 
 
Ref.: 201703554604
 3a Questão
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.
Fila Sequencial
Lista Encadeada
Pilha Encadeada
Pilha Sequencial
 Lista Sequencial
 
 
 
Ref.: 201704407514
 4a Questão
Analise a função abaixo, considerando o tipo Livro e marque a opção correta.
int R2D2 (Livro v[ ], int c, int n) {
for (int i = 0; i < n; i++)
 if (v[i].codigo == c)
 return i;
 return -1;
}
onde 
struct Livro {
 int codigo;
 char autor[30];
 };
Ocorre erro na função R2D2 se o valor de c não estiver sido encontrado em v.
 Retorna -1 se o valor de n foi encontrado.
Retorna o valor de c se o valor n foi encontrado.
Retorna -1 se o valor de c estiver em v.
 Retorna a posição do valor c em v , se o valor c for encontrado em v.
 
 
Explicação:
Questão objetiva. A função realiza uma busca sequencial.
A cada rodada do loop é verificado se o código de v[i] é igual ao valor de c, passado como parâmetro. Se o código
estiver em v[i], então a posição i é retornada. Se o teste do if nunca tiver sucesso, então, sairemos do for sem sucesso e
ao final, será retornado -1, que não pode ser índice ou posição de qualquer valor no vetor.
 
 
 
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
Ref.: 201703352187
 5a Questão
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 as afirmações II está corretas.
Apenas as afirmações II e III estão corretas.
 Apenas as afirmações I e II estão corretas.
Apenas a afirmação I está correta.
Apenas as afirmações I e III estão corretas.
 
 
 
Ref.: 201703557088
 6a Questão
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].matricula << " " << L[i].nome << endl;
for (int i = 0; i < n; i++)
 cout << L.matricula << " " << L.nome << 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] << endl;
 
 
 
Ref.: 201703419466
 7a Questão
São métodos ou algoritmos conhecidos de ordenação de dados por troca:
 bubble sort e quicksort.
 hashing e bubble sort.
busca por ordenação e ordenação shell.
quicksort e hashing.
ordenação shell e hashing.
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js
 
 
Explicação:
Bubble sort é o algoritmo mais simples, mas o menos eficientes. Neste algoritmo cada elemento da posição i será
comparado com o elemento da posição i + 1, ou seja, um elemento da posição 2 será comparado com o elemento da
posição 3. Caso o elemento da posição 2 for maior que o da posição 3, eles trocam de lugar e assim sucessivamente. Por
causa dessa forma de execução, o vetor terá que ser percorrido quantas vezes que for necessária, tornando o algoritmo
ineficiente para listas muito grandes.
 
O Quicksort é o algoritmo mais eficiente na ordenação por comparação. Nele se escolhe um elemento chamado de pivô,
a partir disto é organizada a lista para que todos os números anteriores a ele sejam menores que ele, e todos os
números posteriores a ele sejam maiores que ele. Ao final desse processo o número pivô já está em sua posição final.
Os dois grupos desordenados recursivamente sofreram o mesmo processo até que a lista esteja ordenada.
 
 
 
 
Ref.: 201704474580
 8a Questão
Considere as seguintes afirmações: I. Só podemos ter uma matriz de no máximo duas dimensões. Exemplo: C[100]
[100]. II. Ao declararmos um vetor int A[10], se escrevemos A[2] acessamos o segundo elemento do vetor. III. Uma
string declarada como char B[30] armazena no máximo 30 caracteres. Escolha a alternativa correta:
Estão corretas apenas as afirmativas I e III.
 Nenhuma afirmação está correta.
Está correta apenas a afirmativa I.
Estão corretas apenas as afirmativas I e II.
Está correta apenas a afirmativa II.
 
 
Explicação:
Analisando cada afirmativa :
 I. Só podemos ter uma matriz de no máximo duas dimensões. Exemplo: C[100][100].
 Falso. Podemos ter matrizes unidimensionais, tridimensionais, etc...
 II. Ao declararmos um vetor int A[10], se escrevemos A[2] acessamos o segundo elemento do vetor.
Falso. Em C++ o índice inicial é zero. Logo, A[2] é o elemento de índice 2, ou seja, o 3o. elemento do vetor.
III. Uma string declarada como char B[30] armazena no máximo 30 caracteres. Escolha a alternativa correta:
Falso. B pode armazenar no máximo 29 caracteres que sejam dados, pois existe uma área para o caracter nulo.
Logo, todas as opções são falsas.
 
 
 
 
 
File failed to load: http://simulado.estacio.br/ckeditor/MathJax/a11y/accessibility-menu.js

Outros materiais