Buscar

AVALIANDO APRENDIZADO ESTRUTURA DE DADOS

Prévia do material em texto

1a Questão (Ref.: 201408823985)
	Pontos: 0,1  / 0,1
	Sobre as estruturas de dados existentes podemos afirmar que:
		
	 
	Na estrutura das Pilhas a manipulação dos dados sempre se dá no topo.
	
	A estrutura do tipo LIFO sempre realiza a remoção do elemento mais antigo inserido.
	
	Na estrutura do tipo LIFO, as informações são inseridas no início e removidas do final.
	
	Encadeamento estático e dinâmico apresentam o mesmo funcionamento de alocação na estrutura do tipo PILHA.
	
	Na estrutura do tipo FIFO, as informações são inseridas no início e removidas do final.
		
	
	
	 2a Questão (Ref.: 201408081265)
	Pontos: 0,1  / 0,1
	O registro de ativação de uma sub-rotina é o conjunto das informações que devem/precisam ser alocadas em memória. Assinale abaixo a única opção que representa a composição destas informações.
		
	
	( ) endereço de retorno / valor de retorno / endereço de ponteiro
	
	( ) variáveis locais / valor de retorno / endereço de ponteiro
	
	( ) parâmetros passados / endereço inicial / endereço de retorno
	 
	( ) endereço de retorno / variáveis locais / parâmetros passados
	
	( ) endereço de ponteiro / variáveis locais / endereço inicial
		
	
	
	 3a Questão (Ref.: 201408078297)
	Pontos: 0,1  / 0,1
	O método de ordenação que compara pares de chaves de ordenação, trocando os elementos correspondentes caso estejam fora de ordem é o método:
		
	
	Heapsort
	 
	bolha
	
	seleção
	
	inserção
	
	QuickSort
		
	
	
	 4a Questão (Ref.: 201408078445)
	Pontos: 0,1  / 0,1
	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);
}
		
	
	Igual a zero
	
	Passagem por referência
	 
	Recursiva
	
	Condicional de seleção
	
	Sequencial
		
	
	
	 5a Questão (Ref.: 201408715979)
	Pontos: 0,1  / 0,1
	Supondo que um vetor de inteiros vet foi preenchido com a seguinte sequência de números 24, 11, 50, 45, 12, 34, 10, 53, 9, 29 . Qual o valor da variável temp, analisando o trecho de código abaixo desenvolvido em C? 1. int vet[10]; 2. int temp = vet[0]; 3. for (int i = 0; i < 10; i++) { 4. if(vet[i] >= temp ) { 5. vet[i] = temp; 6. } 7. } 8. printf("%d", temp);
		
	 
	24
	
	0
	
	29
	
	53
	
	50
	 1a Questão (Ref.: 201408311442)
	Pontos: 0,0  / 0,1
	QUAL A SAÍDA DO PROGRAMA ABAIXO?
#include 
main()
{
 int x=5,*p;
 p=&x;
 
 cout << x - *p << " " << **&*&p + 1 << " " << *p*2+*p << " " << x+**&p;
 system("pause");
}
		
	
	0 6 16 14
	
	1 6 15 12
	 
	0 6 15 11
	
	0 8 16 10
	 
	0 6 15 10
		
	
	
	 2a Questão (Ref.: 201408078092)
	Pontos: 0,1  / 0,1
	
Ordene a coluna direita de acordo com a da esquerda, associando as características de implementação de cada: (Podem existir mais de uma opção à direita para alguma da esquerda)
 
Indique a alternativa correta:
		
	
	b - b - a - c - c - c
	 
	a - b - a - c - c - b
	
	a - c - a - b - c - a
	
	c - a - a - b - c - b
	
	a - a - a - b - c - b
		 Gabarito Comentado.
	
	
	 3a Questão (Ref.: 201408654862)
	Pontos: 0,1  / 0,1
	Qual das inicializações de ponteiros apresentadas abaixo está correta?
		
	
	int *p = new *int;
	
	int *p = new int[];
	
	int *p = new int*;
	
	int *p = create int;
	 
	int *p = new int;
		
	
	
	 4a Questão (Ref.: 201408077901)
	Pontos: 0,1  / 0,1
	Considere:
I - Os algoritmos de busca binária e de busca seqüencial executam processamento repetitivo.
II - Os algoritmos de busca binária e de busca seqüencial utilizam a técnica de recursão.
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
		
	 
	(A) I, apenas.
	
	(B) II, apenas.
	
	(E) I e IV, apenas.
	
	(C) I e II, apenas.
	
	(D) I, II, III e IV.
		
	
	
	 5a Questão (Ref.: 201408640959)
	Pontos: 0,1  / 0,1
	   Ao treinar macacos, foi realizado um jogo para avaliar sua  memória. O cientista fornecia sequências de cartas com figuras geométricas e o macaco devia reproduzir a sequência inversa usando figuras geométricas reais.  Qual a estrutura de dados mais adequada para modelar esse jogo ?
		
	
	lista
	 
	pilha
	
	fila
	
	grafo
	
	árvore
	 1a Questão (Ref.: 201408077892)
	Pontos: 0,1  / 0,1
	Um apontador é uma variável que contém o endereço de outra variável. Apontadores são muito usados, em parte porque são, às vezes, a única forma de se expressar um processo de computação e, em parte, porque, normalmente, implicam um código mais compacto e eficiente que o obtido de outras formas. Considerando o uso de apontadores nas linguagens procedurais atuais, julgue os itens que se seguem com E se for errado e C se for certo.
(  ) O uso de apontadores como argumentos de funções que realizem chamada por valor não permite alteração de seus conteúdos de memória na função.
(  ) Com apontadores, é possível criar funções que retornem estruturas de dados complexas.
(  ) Para recuperar o valor da variável apontada, basta que o apontador seja atribuído a uma variável de mesmo tipo.
(  ) Arranjos de apontadores podem ser usados em funções que recebam como argumentos um número variável de cadeias de caracteres.
(  ) Em geral, para que um arranjo seja percorrido por um ponteiro, para cada elemento do arranjo deve-se adicionar ao ponteiro o número de bytes que o elemento ocupa em memória.
		
	
	e) C - E - C - E - C
	
	b) C - C - E - E - E
	
	c) E - E - C - C - E
	 
	a) E - C - E - C - E
	
	d) E - C - E - C - C
		 Gabarito Comentado.
	
	
	 2a Questão (Ref.: 201408078307)
	Pontos: 0,1  / 0,1
	Considerando a estrutura de fila circular vista em sala, que define as seguintes operações com uma fila:
int enfileirar(int v[], int valor, int *fim) - insere um elemento na fila indicada por v.
int desenfileirar(int v[], int *inicio, int fim, float &valor) - remove um elemento da fila indicada por v.
Supondo que foram realizadas as seguintes operações numa fila circular (implementada em uma estrutura linear sequencial) de números inteiros de tamanho 5, que inicialmente se encontrava vazia:
enfileirar (minhaFila[], 10, fim);
enfileirar (minhaFila[], 20, fim);
desenfileirar (minhaFila[], inicio, fim, valor);
enfileirar (minhaFila[], 30, fim);
desenfileirar (minhaFila[], inicio, fim, valor);
enfileirar (minhaFila[], 40, fim);
enfileirar (minhaFila[], 50, fim);
enfileirar (minhaFila[], 60, fim);
desenfileirar (minhaFila[], inicio, fim, valor);
enfileirar (minhaFila[], 70, fim);
Qual a posição, dentro da estrutura linear sequencial (vetor - que representa a fila), que se encontra o último elemento inserido na fila?
		
	
	4
	 
	1
	
	5
	
	6
	
	7
		
	
	
	 3a Questão (Ref.: 201408804616)
	Pontos: 0,1  / 0,1
	A principal vantagem da alocação estática de memória sobre a alocação dinâmica de memória é:
		
	
	Possibilidade de alocação em tempo de execução.
	
	Uso de ponteiros.
	
	Possibilidade de alocação em tempo de compilação.
	
	Quantidade de armazenamento.
	 
	Velocidade de acesso.
		
	
	
	 4a Questão (Ref.: 201408078355)
	Pontos: 0,1  / 0,1
	 
Considerando que a lista a seguir, encontra-se criada na memória, o que será exibido pelo trecho de programa a seguir:
aux = inicio;
while(aux -> proximo != NULL)
aux = aux -> proximo;
novo = new tipoNo;
novo -> valor = 'F';
novo -> proximo = NULL;
aux -> proximo = novo;
aux = inicio;
while (aux != NULL){
cout << aux -> valor << " ";
aux = aux -> próximo;
}
		
	
	H
	
	H K M
	
	F
	
	NULL
	 
	H K M F
		 Gabarito Comentado.
	
	
	 5a Questão (Ref.: 201408725839)
	Pontos: 0,1  / 0,1
	Assinale a alternativa que traz uma afirmação incorreta sobre as diversas implementações da estrutura de dados lista.
		
	
	A estrutura do nó da lista duplamente encadeada deve, obrigatoriamente, possuir um ponteiro para o nó anterior e outro para o nó seguinte, permitindo movimentação para frente e para trás.
	
	A lista simplesmente encadeada é adequada para a resolução de problemas em que os elementos da lista devem ser percorridos em apenas uma direção.
	 
	Listas encadeadas em geral são preferíveis em relação às listas sequenciais, especialmente por serem mais eficientes e sempre utilizarem menos espaço de armazenamento na memória.
	
	A lista circular é toda lista, independente do tipo de alocação, em que é formado um ciclo entre seus elementos. Por exemplo, quando o último elemento da lista aponta para o primeiro.
	
	A lista sequencial deve ser implementada com o uso de estruturas de vetor, pois essas essas estruturas utilizam o conceito de alocação estática e dispõem seus elementos de forma contígua na memória.
	 1a Questão (Ref.: 201408078330)
	Pontos: 0,1  / 0,1
	Suponha que uma pilha, P1, esta descrita através de uma lista encadeada como apresentado na figura a seguir:
Imagine uma segunda pilha, P2, inicialmente vazia.
Suponha ainda que, a pilha P2 fosse preenchida com os elementos removidos de P1.
Qual seria a saída apresentada na tela, caso o conteúdo da pilha P2 fosse sendo removido e, cada elemento retirado de P2, fosse apresentado na tela?
Suponha agora que ao invés da pilha P2, uma fila F1 (inicialmente vazia) fosse usada. Assim, fila F1 fosse preenchida com os elementos removidos da pilha P1.
Qual seria a saída apresentada na tela, caso o conteúdo da fila F1 fosse sendo removido e, cada elemento retirado de F1, fosse apresentado na tela? 
A resposta para cada uma das perguntas respectivamente seria.
		
	
	MARROCOS/MARROCOS.
	
	SOCORRAM/MARROCOS.
	
	Nada seria apresentado, pois a pilha P2, assim como a fila F1 estão vazias.
	
	SOCORRAM/SOCORRAM.
	 
	MARROCOS/SOCORRAM.
		
	
	
	 2a Questão (Ref.: 201408061425)
	Pontos: 0,1  / 0,1
	Considere que os seguintes itens são inseridos, nesta ordem, em uma estrutura de dados: 3, 4, 7, 10, 1. Marque a alternativa correspondente ao segundo item a ser retirado caso essa estrutura de dados seja uma fila, lista e pilha, respectivamente.
		
	
	4; impossível determinar; impossível determinar.
	 
	4; impossível determinar; 10.
	
	impossível determinar; impossível determinar; impossível determinar.
	
	10; impossível determinar; 4.
	
	impossível determinar; 4; impossível determinar.
		
	
	
	 3a Questão (Ref.: 201408078443)
	Pontos: 0,1  / 0,1
	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 ordenação, marque a alternativa correta.
struct nomeRegistro{
       int info;
       struct nomeRegistro* ant;
       struct nomeRegistro* prox;
};
typedef struct nomeRegistro NOMEREGISTRO;
		
	
	Matriz
	
	Pilha
	
	Lista encadeada
	
	Fila
	 
	Lista duplamente encadeada
		
	
	
	 4a Questão (Ref.: 201408692010)
	Pontos: 0,1  / 0,1
	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:
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 removem o nodo apontado pelo ponteiro p.
	
	As operações possibilitam o percurso do ponteiro p da direita para esquerda.
	
	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.
		 Gabarito Comentado.
	
	
	 5a Questão (Ref.: 201408742383)
	Pontos: 0,1  / 0,1
	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;
		
	
	Fila
	 
	Lista duplamente encadeada
	
	Pilha
	
	Lista encadeada
	
	Matriz

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes