Buscar

Prova Objetiva Estrutura de Dados - Nota 100 - 04/11/2016

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

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 6, do total de 9 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

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 9, do total de 9 páginas

Prévia do material em texto

Questão 1/10 - Estrutura de Dados 
Sobre alocação dinâmica de memória, é correto afirmar:Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
A Quando alocamos um determinado espaço de memória, podemos armazenar qualquer tipo de variável 
neste espaço alocado. 
 
B Variáveis do tipo inteiro podem armazenar tanto número inteiro quando endereções de memória inteiras. 
 
C Quando alocamos espaço de memória, não precisamos definir o tamanho a ser alocado, pois precisamos 
somente do endereço de memória alocado 
 
D A principal vantagem de trabalharmos com alocação dinâmica de memória é que não precisamos definir a 
quantidade de espaço a ser alocado em linha de código. 
O espaço de memória é alocado de acordo com a necessidade em tempo de execução do programa 
 
E A principal vantagem de trabalharmos com vetor em relação a alocação dinâmica de memória, é que no 
vetor não precisamos definir a quantidade de espaço a ser reservado de memória para armazenar variáveis. 
O espaço de memória é reservado de acordo com a necessidade em tempo de execução do programa 
 
Questão 2/10 - Estrutura de Dados 
Lista é um conceito de trabalho, uma metodologia com regras, similar a Pilhas e Filas. 
Para a montagem das Listas utilizamos alocação dinâmica de memória, ponteiros e registros. 
 
Com base nisso e com as afirmações a seguir, responda: 
 
I – Assim como Pilhas e Filas, em Listas somente podemos incluir no início ou no final de uma lista. 
II – Diferente de Pilhas e Filas, em Listas podemos incluir no meio de uma Lista. 
III – Em Listas podemos incluir de forma ordenada as informações. Deste modo, podemos em uma mesma Lista incluir no início, no final ou no meio (entre dois 
registros). 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa com a sequência CORRETA. 
 
A Somente a questão I está correta. 
 
B Somente a questão II está correta. 
 
C Somente a questão III está correta. 
 
D Estão corretas as questões I e II. 
 
E Estão corretas as questões II e III. 
 
Questão 3/10 - Estrutura de Dados 
Para conectarmos um determinado registro entre dois outros registros de uma Lista (incluir no meio), se não seguirmos uma ordem correta de procedimentos, 
podemos perder o encadeamento de nossa Lista. 
Para incluir fazemos primeiramente uma pesquisa para saber onde incluir. 
Se após a rotina de pesquisa para incluir, ficou definido que a variável ponteiro “aux” contem o endereço do registro que vai anteceder o registro que vai entrar, e a 
variável “ptr” contem o endereço do registro a ser incluído.Considerando o conteúdo ministrado na aula 6, qual rotina em programação devemos utiliza? Assinale 
a alternativa CORRETA. 
 
A aux->ante = ptr; 
aux->prox = ptr->prox; 
aux->prox->ante = aux; 
aux->ante->prox = aux; 
 
B ptr->ante = aux; 
ptr->prox = aux->prox; 
ptr->prox->ante = ptr; 
ptr->ante->prox = ptr; 
 
C ptr->prox = aux; 
ptr->ante = aux->ante; 
ptr->prox->ante = ptr; 
ptr->ante->prox = ptr; 
 
D ptr->ante = aux; 
ptr->prox = aux->prox; 
aux->prox->prox = ptr; 
aux->ante->ante = ptr; 
 
E ptr->ante = aux; 
ptr->prox = aux; 
ptr->prox->ante = ptr; 
ptr->ante->prox = ptr; 
 
Questão 4/10 - Estrutura de Dados 
Com relação as informações sobre algoritmos de Pilhas e Filas Fila a seguir, responda 
 
I – Quando trabalhamos tanto com Pilhas quanto com Filas, precisamos ter uma variável de controle para informar ao programa onde estas estruturas começam e 
outra variável de controle para informar ao programa onde estas estruturas terminam. 
II – Quando trabalhamos com o conceito Pilha, precisamos de uma única variável de controle para informar onde é o início da Pilha. Já para o conceito de Fila, 
precisamos de duas variáveis de controle, uma para informar ao programa onde a Fila começa e outra para informar onde a Fila termina. 
III – No algoritmo de Pilha, se a variável de controle estiver com o conteúdo NULL, significa que não existe nenhum dado armazenado na Pilha. 
IV – Quando retiramos dados de uma Fila, temos que seguir a seguinte ordem: 1º trabalhar com o conteúdo do registro; 2º armazenar o endereço do registro em 
uma variável auxiliar; 3º atualizar a variável de controle par o próximo endereço da Fila; 4º liberar o espaço de memória que está na variável auxiliar. Se não 
seguirmos corretamente estes passos, podemos perder o encadeamento da Fila.Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
A As questões I, III e IV estão corretas 
 
B As questões I, II e III estão corretas 
 
C As questões II, III e IV estão corretas 
 
D As questões II e III estão incorretas 
 
E As questões I e II estão incorretas 
 
Questão 5/10 - Estrutura de Dados 
Sobre a rotina do Programa a seguir: 
 
struct Dados { 
 char nome[30]; 
 struct Dados *ante, *prox; 
} *prim, *ulti, *ptr; 
 
teste() 
{ while( prim != NULL) 
 { ptr = prim; 
 prim = prim->prox; 
 free(ptr); 
 } 
 ulti = NULL; 
} 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa INCORRETA (ERRADA). 
 
A Tomando como base que esta função esvazia a Lista completamente, a linha de comando “ulti = NULL” (que 
contém o endereço do último registro da Lista) é desnecessária se na inclusão do primeiro registro na Lista 
for verificado somente a variável que indica o endereço do primeiro elemento da Lista “prim”. 
 
B O objetivo principal desta função é retirar todos os elementos da Lista e liberar o espaço de memória por 
eles ocupados. 
 
C A linha de comando “ptr = prim;” é desnecessária, pois podemos liberar espação de memória diretamente 
com a variável “prim”. Ficando deste modo o comando: “free(prim->prox);”. 
 
D Esta função para esvaziar a Lista, não funciona em Listas Circulares, por que o campo “prox” em Listas 
Circulares nunca será “NULL”. 
 
E Independente se a Lista for Simplesmente Encadeada ou Duplamente Encadeada, esta função pode ser 
utilizada para esvaziar a Lista completamente. 
 
Questão 6/10 - Estrutura de Dados 
Sobre incluir elementos em uma Lista, responda: 
 
I – Para incluir registros em uma Lista, estes podem ser incluídos no início, no final ou no meio da Lista. Para o caso de incluir no final e no início, temos que 
tomar o cuidado de após conectar o registro da Lista, atualizar as respectivas variáveis de controle. 
II – Os passos corretos e em ordem, para incluir registros em uma Lista são: 1º Alocar espaço de memória; 2º Armazenar os dados; 3º Conectar (ligar) o registro na 
Lista; 4º Atualizar as variáveis de controle. 
III – Se a Lista não for ordenada, com relação a programação, é mais fácil incluir no início ou no final da ListaConsiderando o conteúdo ministrado na aula 6, 
assinale a alternativa CORRETA 
 
A Somente as questões I e II estão corretas 
 
B Somente as questões I e III estão corretas 
 
C Somente as questões II e III estão corretas 
 
D As questões I, II e III estão corretas 
 
E Apenas a questão I está correta 
 
Questão 7/10 - Estrutura de Dados 
Para armazenar dados em uma Pilha, os seguintes passos devem ser realizados na respectiva ordemConsiderando o conteúdo ministrado na aula 5, assinale a 
alternativa CORRETA 
 
A 1. Armazenar os dados no espaço alocado 
2. Alocar espaço de memória 
3. Conectar o registro alocado na Pilha 
4. Atualizar variáveis de controle 
 
B 1. Alocar espaço de memória 
2. Armazenar os dados no espaço alocado 
3. Conectar o registro alocado na Pilha 
4. Atualizar variáveis de controle 
 
C 1. Alocar espaço de memória 
2. Armazenar os dados no espaço alocado 
3. Atualizar variáveis de controle 
4. Conectar o registro alocado na Pilha 
 
D 1. Atualizar variáveisde controle 
2. Alocar espaço de memória 
3. Armazenar os dados no espaço alocado 
4. Conectar o registro alocado na Pilha 
 
E 1. Conectar o registro alocado na Pilha 
2. Alocar espaço de memória 
3. Armazenar os dados no espaço alocado 
4. Atualizar variáveis de controle 
 
Questão 8/10 - Estrutura de Dados 
Sobre Listas, é correto afirmar: 
 
I – Assim como em Filas, precisamos de variáveis de controle para armazenar os endereções dos registros de início e final da Lista. 
II – Em Listas Circulares podemos ter uma única variável de controle que aponte para pelo menos um endereço de memória de um registro que esteja na Lista. 
III – Em Listas precisamos de uma variável ponteiro auxiliar para podermos percorrer cada registro da Lista. 
Considerando o conteúdo ministrado na aula 6, assinale a alternativa com a sequência CORRETA. 
 
A As questões I e II estão corretas. 
 
B As questões I e III estão corretas. 
 
C As questões II e III estão corretas 
 
D Todas as questões estão CORRETAS. 
 
E Todas as questões estão incorretas. 
 
Questão 9/10 - Estrutura de Dados 
Quantos são e quais são os tipos de Listas que podemos ter:Considerando o conteúdo ministrado na aula 6, assinale a alternativa CORRETA 
 
A 2 - Encadeada e Duplamente Encadeada 
 
B 4 - Encadeada, Duplamente Encadeada, Encadeada Circular e Duplamente Encadeada Circular 
 
C 2 - Encadeada e Circular 
 
D 3 - Encadeada, Duplamente Encadeada e Encadeada Circular 
 
E 2 - Duplamente Encadeada e Duplamente Encadeada Circular 
 
Questão 10/10 - Estrutura de Dados 
Com relação as informações sobre Fila a seguir, responda 
 
I – Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo tipo do registro para conter o endereço 
de memória do próximo registro a entrar na Fila. Deste modo, quando tiramos um registro da Fila, sabemos onde está o anterior a este que saiu. 
II – Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo tipo do registro para conter o 
endereço de memória do registro que entrou antes dele na Fila. Deste modo, quando tiramos um registro da Fila, sabemos onde está o anterior a este que saiu. 
III - Quando declaramos um registro que será utilizado para a criação de Filas, temos que criar um campo ponteiro do mesmo tipo do registro para conter o 
endereço de memória deste mesmo registro. Deste modo é que o programa sabe onde está cada registro da Fila na memória. 
Considerando o conteúdo ministrado na aula 5, assinale a alternativa CORRETA 
 
A Somente a afirmação I está correta 
 
B Somente a afirmação II está correta 
 
C Somente a afirmação III está correta 
 
D Somente as afirmações I e III estão corretas. 
 
E Nenhuma afirmação está correta.

Outros materiais