Baixe o app para aproveitar ainda mais
Prévia do material em texto
ESTACIO ESTRUTURA DE DADOS AV AVS JUNHO 2017 1a Questão Qual a diferença entre pilha e fila? 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 Em relação a filas e pilhas dinâmicas, cite uma das vantagens de se implementar estruturas dinamicamente. Gabarito: É o fato destas estruturas ocuparem espaço estritamente necessário. 3a Questão 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, expandindose ou contraindose 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). a) II, III, IV e V. b) I, III, IV e V. c) I, III e V. d) II, IV e V. e) I, II e III. 4a Questão Considere a seguinte função: void dobro(int x) { x = 2 * x; } Qual valor será impresso na tela quando o seguinte programa principal for executado? int main() { int n; n = 5; dobro(n); cout << n; return 0; } a) 20 b) 0 c) Haverá um erro de compilação d) 5 e) 10 5a Questão Qual das seguintes estruturas de dados é classificada como heterogênea? a) Loop b) Pilha c) Registro d) Fila e) Vetor 6a Questão Marque a afirmativa correta para a "Busca ou pesquisa binária". a) É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente. b) Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos. c) Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. d) Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos. e) Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. 7a 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 devese 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. a) Pilha Encadeada b) Lista Encadeada c) Pilha Sequencial d) Fila Sequencial e) Lista Sequencial 8a Questão A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de: a) Registro b) Ponteiro c) Loop d) Pilha e) Fila 9a Questão As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo * proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação: a) pt->próximo.valor=5.60; b) pt.valor->5.60; c) pt->valor=5.60; d) pt->próximo->valor=5.60; e) pt->5.60; 10a Questão Os registros também conhecidos como estruturas, são estruturas de dados do tipo heterogêneo, ou seja, permitem que valores de tipos diferentes possam ser armazenados em uma mesma estrutura. Analisando a estrutura abaixo, a mesma pode ser utilizada para qual tipo de estrutura de dados, marque a alternativa correta. struct nomeRegistro{ int info; struct nomeRegistro* ant; struct nomeRegistro* prox; }; typedef struct nomeRegistro NOMEREGISTRO; a) Pilha b) Lista duplamente encadeada c) Lista encadeada d) Fila e) Matriz
Compartilhar