Buscar

estrutura de dados

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 6 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 6 páginas

Prévia do material em texto

1.
		O armazenamento de dados na memória do computador é feito de forma ordenada, utilizando-se estruturas e regras de operações. Das alternativas a seguir, assinale a correta:
	
	
	
	Em uma lista linear com alocação duplamente encadeada os nós da estrutura ocupam espaços aleatórios na memória e cada nó armazena além da sua informação os endereços do nó anterior e do próximo nó da estrutura.
	
	
	Fila e Pilha são tipos especiais de listas lineares. Na Fila, o último que entra é o primeiro que sai, enquanto na Pilha, o primeiro que entra é o primeiro que sai.
	
	
	Em uma lista linear com alocação sequencial, os dados são heterogêneos e os nós da lista podem ter tamanhos diferentes, mas exigem espaço em endereço contíguo de memória.
	
	
	A lista binária é uma forma não-linear de organização dos dados. Existe um nó denominado raiz da árvore, que pode ter duas ou mais sub-árvores, que por sua vez também podem ter outras sub-árvores.
	
	
	Existem várias formas de apresentação de listas lineares, como listas circulares e as matrizes, que são formas exclusivas das listas de alocação encadeada.
	
Explicação:
Existem várias formas de apresentação de listas lineares, como listas circulares e as matrizes, que são formas exclusivas das listas de alocação encadeada.=è FALSO =è Ela possui apenas uma entrada, chamada de topo, a partir da qual os dadosentram e saem dela. Exemplos de pilhas são: pilha de pratos, pilha de livros, pilhade alocação de variáveis da memória, etc. Uma fila é uma lista linear do tipo FIFO - First In First Out, o primeiro elemento a entrar será o primeiro a sair
A lista binária é uma forma não-linear de organização dos dados. Existe um nó denominado raiz da árvore, que pode ter duas ou mais sub-árvores, que por sua vez também podem ter outras sub-árvores.=è FALSO
Em uma lista linear com alocação sequencial, os dados são heterogêneos e os nós da lista podem ter tamanhos diferentes, mas exigem espaço em endereço contíguo de memória. .=è FALSO
Em uma lista linear com alocação duplamente encadeada os nós da estrutura ocupam espaços aleatórios na memória e cada nó armazena além da sua informação os endereços do nó anterior e do próximo nó da estrutura. ===> VERDADE
Fila e Pilha são tipos especiais de listas lineares. Na Fila, o último que entra é o primeiro que sai, enquanto na Pilha, o primeiro que entra é o primeiro que sai. ===> FALSO ===> Fila, o valor lido, sempre é passado para o começo, ou seja, esse valor aponta para as próximas posições, e quando for feita a exclusão, é só deletar esse valor do começo. Abaixo uma imagem que representa a Fila (FIFO). Pilha, sempre o último valor lido, ficará na `primeira¿ posição da lista, dessa forma, quando for feita a exclusão, um auxiliar aponta para a próxima posição, e a posição atual, é excluída. Abaixo uma imagem que representa a Pilha (LIFO)
	
	
	
	 
		
	
		2.
		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;
	
	
	
	Lista duplamente encadeada
	
	
	Matriz
	
	
	Fila
	
	
	Lista encadeada
	
	
	Pilha
	
	
	
	 
		
	
		3.
		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 removem o nodo apontado pelo ponteiro p.
	
	
	As operações possibilitam o percurso do ponteiro p da direita para esquerda.
	
	
	As operações inserem novo nodo, após o nodo apontado pelo ponteiro p.
	
	
	As operações possibilitam o percurso do ponteiro p da esquerda para direita.
	
	
	As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
		
	Gabarito
Comentado
	
	
	
	
	 
		
	
		4.
		Observe a struct, definida globalmente, e um trecho de uma função que manipula uma Lista Duplamente Encadeada.
struct listaDE
{
 int info;
 struct listaDE* ant;
 struct listaDE* prox;
};
...
listaDE* novo = new listaDE;
novo->info = valor;
novo->prox = LISTA;
novo->ant = NULL; 
Assinale a alternativa que apresenta o protótipo dessa função
	
	
	
	listaDE *remove(listaDE *LISTA, int valor);
	
	
	listaDE *busca (listaDE *LISTA, int valor);
	
	
	void exibeIpF(listaDE *LISTA);
	
	
	listaDE *insereInicio(listaDE *LISTA, int valor); 
	
	
	listaDE *insereFim(listaDE *LISTA, int valor);
		
	Gabarito
Comentado
	
	
	
	
	 
		
	
		5.
		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 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 possibilitam o percurso do ponteiro p da esquerda para direita.
	
	
	As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
	
	
	As operações removem o nodo apontado pelo ponteiro p.
	
	
	
	 
		
	
		6.
		 Suponha uma listagem mantida com informações sobre um equipamento a ser adquirido por uma empresa. A listagem possui as informações sobre de 10 fornecedores, descritas a seguir:
próximo: um ponteiro para o próximo fornecedor da listagem;
nome: nome, identificando o fornecedor;
valor: preço do equipamento no fornecedor;
anterior: um ponteiro para o fornecedor anterior da listagem.
Sendo o fornecedor "Z" o quinto elemento desta listagem e "X" e "Y" dois outros fornecedores que não pertencem à listagem, com seus respectivos ponteiros "pZ", "pX" e "pY", considere o trecho de código abaixo.
pY->proximo = pX;
pX->anterior = pY;
pX->proximo = pZ->proximo;
pZ->proximo->anterior = pX;
pZ->proximo = pY;
pY->anterior = pZ;
Este trecho de código é usado para inserir na listagem os fornecedores:
	
	
	
	Y, antes do Z, e X, logo após o Z.
	
	
	X, antes do Z, e Y, logo após o Z.
	
	
	Y, logo após o Z, e X, logo após o Y.
	
	
	Y, antes do Z, e X, antes do Y.
	
	
	X, logo após o Z, e Y, logo após o X.
		
	Gabarito
Comentado
	
	
	
	
	 
		
	
		7.
		Assinale a alternativa que traz uma afirmação incorreta sobre as diversas implementações da estrutura de dados lista.
	
	
	
	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 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 sequencial deve ser implementada com o uso de estruturas de vetor, pois essas essas estruturas utilizam o conceito de alocação estáticae dispõem seus elementos de forma contígua 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.
	
Explicação:
Analisando cada item.
	>> 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.
	      Afirmativa correta, que segue a definição de lista duplamente encadeada.  Não marcar o item.
	 >> 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.
	 
	     Afirmativa correta.  Em uma lista simplesmente encadeada existe ponteiro para o início da lista. Por isso, não dá para percorrer tal lista  do fim para o início.  Nâo marcar o item.
	>> 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.
	 
	     Afirmativa correta. O vetor pode até ser dinâmica, mas usualmente usa alocação estática de memória e é o recurso usado na implementação das listas sequenciais. Não marcar o item.
	>> 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.
	 
	     Afirmativa correta. 
	>> 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.
      Afirmativa falsa porque as listas encadeadas não ocupam menos espaço que as listas sequencias. Cada nó de uma lista simplemente encadeada, por exemplo, tem um campo de dado e um campo que é ponteiro.
Marcar esta afirmativa.
	 
	
	
	
	 
		
	
		8.
		Em uma lista linear duplamente encadeada.
	
	
	
	Além do campo relativo ao dado, cada nó possui dois ponteiros.
	
	
	Cada nó possui um só ponteiro que referencia o próximo nó da lista.
	
	
	Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
	
	
	O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando um ciclo.
	
	
	O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista.

Continue navegando