Buscar

ATV 03 Estrutura de DADOS II

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

Prévia do material em texto

ATIVIDADE 3 - ADS - ESTRUTURA DE DADOS II - 2018B2
Período:03/07/2018 22:30 a 08/07/2018 23:59 (Horário de Brasília)
Status:ABERTO
Nota máxima:0,50
Gabarito:Gabarito será liberado no dia 09/07/2018 00:00 (Horário de Brasília)
Nota ob�da:
1ª QUESTÃO
O algoritmo de busca em profundidade em grafos conexos faz com que todo um segmento do grafo seja
visitado até o final, antes que uma nova porção seja investigada.
  
PEREIRA, Rogério de Leon. Estruturas de Dados II. Maringá: Unicesumar, 2018. (Adaptado).
 
 
Baseado em nosso livro de estudo, leia as afirmativas a seguir sobre os passos do algoritmo de busca em
profundidade e assinale a alternativa correta.
 
I - A partir do último nó do grafo, o algoritmo monta uma pilha com os vértices adjacentes.
 II - Após percorrer os seus vértices adjacentes, o nó em processamento é marcado como visitado.
 III - Uma vez formada a pilha de nós, o algoritmo pega o último nó empilhado e repete o processo de
percorrê-lo.
 IV - O processamento do algoritmo termina quando o valor procurado é encontrado no grafo ou a pilha fica
vazia, o que significa que todos os nós foram percorridos e o valor não foi encontrado no grafo.
ALTERNATIVAS
Apenas I e II estão corretas.
Apenas II e III estão corretas.
Apenas II e IV estão corretas.
Apenas I, II e III estão corretas.
Apenas I, II e IV estão corretas.
2ª QUESTÃO
A coisa não está fácil para ninguém. A crise chegou, mas o brasileiro é muito bom em usar a criatividade para
amenizar as dificuldades. Marilsa acha que o melhor, num momento como este, é pagar as contas menores e
deixar vencer as contas maiores. Assim, você fica devendo para menos gente e fica mais fácil renegociar as
coisas, lá na frente. Ela colocou todas as contas em cima da mesa, uma ao lado da outra. Ela olhou uma por
uma, procurando a de menor valor. Retirou a conta daquele local e colocou numa pasta. Em seguida, ela
procurou a segunda menor conta e foi repetindo o processo até que todas as contas estivessem ordenadas
na pasta da menor para a de maior valor. Que algoritmo de ordenação foi utilizado pela Marilsa?
ALTERNATIVAS
BubbleSort.
SelectSort.
MergeSort.
QuickSort.
ShellSort.
3ª QUESTÃO
Um programador necessitava realizar a ordenação de um arranjo em seu código, para que certa
funcionalidade de busca obtivesse ganho em desempenho. Para isso, o desenvolvedor intuitivamente
desenvolveu o código em C, apresentado abaixo.
             
Assinale a alternativa que corresponde ao algoritmo implementado pelo programador.
 
ALTERNATIVAS
Ordenação por flutuação, BubbleSort.
Ordenação por inserção, InsertionSort.
Ordenação por seleção, SelectionSort.
Ordenação utilizando concha, ShellSort.
Ordenação por baldes, BucketSort.
4ª QUESTÃO
O método de ordenação MergeSort é um classificado como um algoritmo que utiliza a abordagem dividir para
conquistar. Ele recebe um vetor desordenado e divide-o sucessivamente em duas partes, de forma recursiva,
até que seja todo dividido em partes unitárias. Em seguida, o algoritmo utiliza uma função para juntar estas
partes.
 
Assinale a alternativa, que corresponde sobre como a função é executada para ordenar os elementos no
vetor.
ALTERNATIVAS
Ela é chamada antes de dividir o vetor em duas partes.
Variáveis do tipo int, float e double são utilizadas em seu processamento.
A função utiliza o método da bolha em seu processamento para ordenar os pedaços sendo juntados.
A função executa um procedimento alternativo caso não seja possível alocar memória para o vetor temporário.
Em cada recursão, é necessária a criação de um vetor temporário para armazenar os valores já comparados e
ordenados.
5ª QUESTÃO
Foi solicitado para que você faça a manutenção num sistema de gerenciamento de dados e, após alguma
análise, você percebeu que a técnica de ordenação usa uma variável chamada GAP. Sabendo que mais
detalhes sobre essa técnica facilitará muito o seu trabalho, qual é o nome do algoritmo de ordenação que
possui uma variável chamada GAP, utilizada para fragmentar a massa de dados em regiões menores, onde é
aplicado a ordenação por inserção?
 
Assinale a alternativa correta.
ALTERNATIVAS
Quicksort.
MergeSort.
ShellSort.
SelectSort.
InsertionSort.
6ª QUESTÃO
Uma árvore binária é uma estrutura de dados que possui regras bem rígidas em sua formulação que têm a
ver com a quantidade de nós, raízes e subárvores. Uma árvore binária de busca é um tipo especial de árvore
binária que leva em conta outras regras na sua elaboração. Considerando que a imagem abaixo representa
uma árvore binária de busca, onde poderíamos inserir o valor 40?
  
ALTERNATIVAS
À direita do número 44.
À esquerda do número 33.
À esquerda do número 44.
À direita do número 33, entre 33 e 44.
À esquerda do número 55, entre o número 55 e o número 11.
7ª QUESTÃO
Os métodos de ordenação BubbleSort, SelectionSort e InsertionSort são classificados como algoritmos de
complexidade quadrática. Contudo, o InsertionSort possui uma pequena diferença em sua execução, a qual
afeta o desempenho em comparação com os outros dois métodos.
 
Assinale a alternativa que apresenta está diferença.
ALTERNATIVAS
Ele tem a capacidade de ordenar matrizes, além de vetores.
Ele aplica uma junção otimizada dos métodos BubbleSort e SelectionSort.
Ele não precisa percorrer os dois laços de repetição por inteiro.
Ele processa os dois laços de repetição de forma paralela, otimizando tempo.
Ele "descarta" elementos já posicionados corretamente no vetor, processando apenas o restante.
8ª QUESTÃO
Um dos algoritmos de ordenação mais eficientes chama-se QuickSort. Abaixo é apresentado o código de um
programa em linguagem C, que implementa essa técnica de ordenação.
 
Tomando por base seus conhecimentos a respeito do algoritmo QuickSort e no código fonte acima, avalie as
afirmações abaixo:
I –   Ao alterar a comparação do comando if, na linha 3, mudando de “right > left” para “right < left”, tem-se
a ordenação em ordem decrescente.
 II –  A função “particiona” da linha 4 é responsável por realizar a junção das partições do vetor de maneira
ordenada.
 III – A função “particiona” recebe como parâmetros os valores “left” e “right”, que indicam as posições inicial e
final, respectivamente, do arranjo a ser particionado.
 IV – Ao se inverter as linhas 5 e 6, o algoritmo realiza a ordenação de maneira decrescente.
É correto o que se afirma em:
 
ALTERNATIVAS
I e II, apenas.
I e III, apenas.
II e III, apenas.
II e IV, apenas.
I, II e IV, apenas.
9ª QUESTÃO
Imagine que você é um motoboy e deve realizar uma entregar em um bairro na sua cidade. Pode-se utilizar o
algoritmo de Dijkstra para encontrar o melhor caminho até o seu destino. Identifique, dentre as aplicações
listadas nas afirmativas abaixo, em quais delas o algoritmo de Dijkstra também se aplica, para encontrar uma
solução.
I –   Determinar qual o roteiro mais curto em roteamento de pacotes da internet.
 II –  Encontrar o resultado de uma expressão aritmética.
 III – Realizar a impressão de uma progressão geométrica por um programa.
 IV – Encontrar um caminhamento de custo mínimo em um grafo que possui arestas com peso negativo.
São aplicações do algoritmo de Dijkstra:            
ALTERNATIVAS
I, apenas.
II, apenas.
I e III, apenas.
I, II e IV, apenas.
I, II, III e IV.
10ª QUESTÃO
O algoritmo de busca em largura em grafos conexos percorre primeiramente todos os nós mais próximos do
nó atual, depois os menos distantes, os mais distantes e assim por diante.
 
 
PEREIRA, Rogério de Leon. Estruturas de Dados II. Maringá: Unicesumar, 2018. (Adaptado).
 
 
Assinale a alternativa correta referente à estrutura de dados utilizada no algoritmo de busca em largura.
ALTERNATIVAS
Fila.
Pilha.
Vetor.
Matriz.
Lista encadeada.

Mais conteúdos dessa disciplina