Baixe o app para aproveitar ainda mais
Prévia do material em texto
23/6/2014 Estácio 1/5 Avaliação: ESTRUTURA DE DADOS Tipo de Avaliação: AV Aluno: Professor: JANE TAVARES ALVAREZ DA SILVA Turma: Nota da Prova: Nota de Partic.: Data: 09/06/2014 1a Questão (Ref.: 201308386531) Pontos: 1,3 / 1,5 Como é a lógica do LIFO? Resposta: A lógica LIFO (Last In First Out) consiste em que o último dado que entra é o primeiro a sair. Gabarito: O primeiro que entra na pilha é o último que sai. 2a Questão (Ref.: 201308560813) Pontos: 0,5 / 0,5 por seleção. bubblesort. uma mistura dos métodos de ordenação por inserção e bubblesort. uma mistura dos métodos de ordenação por seleção e por inserção. por inserção. 3a Questão (Ref.: 201308564281) Pontos: 0,0 / 1,5 23/6/2014 Estácio 2/5 No dia 20 de fevereiro de 2002(20022002), vivenciou-se um momento que só acontecerá novamente em 21 de dezembro de 2112(21122112). Acredito que muitas pessoas não tinham familiaridade com o termo capicua que, segundo o dicionário do Aurélio, se aplica a um grupo de algarismos que lidos da esquerda para direita, ou da direita para esquerda, representam o mesmo número. Construa uma função que receba um número inteiro longo e retorne o número escrito de trás para frente. Exemplo: recebe 123 e retorna 321. Resposta: void invert() { int numero[]; int invertido, i; numero[] = 123; invertido = numero[i] } Gabarito: long long int espelha(long long int num ) //pode ser long long { long long int espelhado=0; //pode ser long long while (num > 0) { espelhado = 10 * espelhado + num % 10; num = num / 10; } return espelhado; } 4a Questão (Ref.: 201308565228) Pontos: 0,0 / 0,5 Analise as afirmativas abaixo e selecione a alternativa correta. I Algumas aplicações da estrutura de dados grafo são: Diagrama de Entidade Relacionamento e Redes de computadores. II Árvore e lista duplamente encadeada são estruturas não lineares. III A Fila é uma estrutura não linear e a inserção de um elemento acontece ao final. IV A Lista é uma das estruturas de dados mais simples, mas não se pode ordená-la. V O uso de ponteiros é fundamental para construção de listas encadeadas. I e V são verdadeiras III e V são verdadeiras II E IV são verdadeiras I , II e IV são verdadeiras II e V são verdadeiras 5a Questão (Ref.: 201308356063) Pontos: 0,0 / 0,5 23/6/2014 Estácio cout << "Pilha cheia."; 3/5 Ao remover um elemento armazenado em uma pilha é necessário a atualização da variável (Topo) indicadora de posição. Qual das alternativas abaixo está correta? Antes a operação de remoção decrementa a variável indicadora de posição. Antes da operação de remoção incrementa a variável indicadora de posição. Após a operação de remoção incrementa a variável indicadora de posição. Após a operação de remoção decrementa a variável indicadora de posição. Após a operação de remoção incrementa a variável indicadora de inicio. 6a Questão (Ref.: 201308356057) Pontos: 1,0 / 1,0 Qual das alternativas a seguir pode definir uma estrutura de fila? Entrada e saída de dados pelo final. Entrada de dados pelo final e saída pelo início. Entrada e saída de dados pelo início. Entrada de dados pelo início e saída pelo final. Entrada e saída de dados em qualquer local. 7a Questão (Ref.: 201308560791) Pontos: 0,5 / 0,5 Com relação à struct, é correto afirmar que : Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de tipos diferentes ou não. Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. A struct é sempre definida dentro da main. Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados distinto de outro campo. Cada elemento da struct é chamado componente. 8a Questão (Ref.: 201308560862) Pontos: 0,0 / 0,5 Considere uma pilha sequencial P com capacidade para n elementos. Sabendo que P é do tipo Pilha definido a seguir, marque a opção que corretamente implementa a operação de empilhamento, considerando que o topo da pilha recebeu -1 na inicialização. struct Pilha { int v[n], topo; }; void empilhar(Pilha P, int valor) { if (P.topo == n - 1) 23/6/2014 Estácio 4/5 else { P.topo++; P.v[P.topo] = valor; } } void empilhar(Pilha &P, int valor) { if (topo == n - 1) cout << "Pilha cheia."; else { topo++; v[topo] = valor; } } void empilhar(Pilha P, int valor) { if (P.topo == n) cout << "Pilha cheia."; else { P.topo++; P.v[P.topo] = valor; } } void empilhar(Pilha &P, int valor) { if (P.topo == n - 1) cout << "Pilha cheia."; else { P.topo++; P.v[P.topo] = valor; } } void empilhar(Pilha &P, int valor) { if (P.topo == n - 1) cout << "Pilha cheia."; else P.v[P.topo] = valor; } 9a Questão (Ref.: 201308355570) Pontos: 0,5 / 0,5 Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes são caracteristicamente: Heterogêneos e com acesso indexado-sequencial. Homogêneos e de acesso aleatório por intermédio de índices. Homogêneos e com acesso indexado-sequencial. Heterogêneos e com acesso FIFO. Heterogêneos e com acesso LIFO. 10a Questão (Ref.: 201308558377) Pontos: 0,0 / 1,0 Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo, são estes os ponteiros ant e prox, que apontam respectivamente para o nodo anterior e para o próximo nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim analisando as operações a seguir: 23/6/2014 Estácio 5/5 p->ant->prox=p->prox; p->prox->ant=p->ant; Sendo p um ponteiro que aponta para um dos nodos da lista, pode-se afirmar que: As operações possibilitam a busca de um nodo apontado pelo ponteiro p. As operações possibilitam o percurso do ponteiro p da esquerda para direita. As operações inserem novo nodo, após o nodo apontado pelo ponteiro p. As operações possibilitam o percurso do ponteiro p da direita para esquerda. As operações removem o nodo apontado pelo ponteiro p. Período de não visualização da prova: desde 30/05/2014 até 16/06/2014.
Compartilhar