Baixe o app para aproveitar ainda mais
Prévia do material em texto
24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 1/6 Exercício avalie sua aprendizagem (MPE-BA/2023) Algoritmos de ordenação são responsáveis por ordenar elementos de uma estrutura de dados de forma completa ou parcial. Sobre a complexidade dos algoritmos de ordenação, assinale, a seguir, o algoritmo de ordenação que, no pior caso, tem complexidade igual a O(n log n). Avalie as a�rmativas abaixo: 1 - O merge sort executa em O(n log n). 2 - O bucket sort executa em O(n). ESTRUTURA DE DADOS EM C Lupa DGT0298_202102062292_TEMAS Aluno: ISAKIEL DA SILVA SOUZA Matr.: 202102062292 Disc.: ESTRUTURA DE DADOS 2023.3 EAD (G) / EX Prezado (a) Aluno(a), Você fará agora seu EXERCÍCIO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha. Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. ORDENAÇÃO 1. Quick sort. Selection sort. Bubble sort. Insertion sort. Merge sort. Data Resp.: 24/10/2023 00:22:33 Explicação: O Merge sort é um algoritmo de divisão e conquista que divide repetidamente a lista em sublistas menores, até que cada sublista contenha apenas um elemento. Em seguida, ele combina as sublistas em pares, ordenando-as ao mesmo tempo, e continua mesclando-as em sublistas maiores até que a lista esteja completamente ordenada. A complexidade do Merge sort no pior caso é O(n log n), onde "n" é o número de elementos a serem ordenados. 2. javascript:voltar(); javascript:voltar(); javascript:voltar(); javascript:voltar(); javascript:diminui(); javascript:diminui(); javascript:aumenta(); javascript:aumenta(); 24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 2/6 3 - Algoritmos que executam em uma complexidade abaixo de O(n log n) ordenam a sequência sem comparar os elementos desta sequência. A linguagem C é uma linguagem de programação de alto nível amplamente utilizada em sistemas operacionais, compiladores, interpretadores, editores de texto, entre outras aplicações. Qual das seguintes alternativas corretamente de�ne o conceito de ponteiro na linguagem C? (COSEAC/2009 - Adaptada) Uma escolha adequada de estrutura de dados pode proporcionar diversas vantagens, tais como a otimização de processos de busca, inserção e remoção de dados, redução do consumo de recursos computacionais e aumento da escalabilidade e desempenho de sistemas. Quando a Estrutura de dados é composta por variáveis do mesmo tipo primitivo, têm-se por de�nição, estruturas compostas: Somente a 1 e a 2 estão corretas. Somente a 1 está correta. Todas estão corretas. Somente a 2 e a 3 estão corretas. Somente a 3 está correta. Data Resp.: 24/10/2023 00:24:26 Explicação: A resposta correta é: Todas estão corretas. ESTRUTURAS DE DADOS HETEROGÊNEAS 3. Um ponteiro é uma função que permite manipular vetores e matrizes. Um ponteiro é um tipo de dado inteiro que permite armazenar valores maiores que o limite permitido pelo tipo int. Um ponteiro é uma variável que armazena um endereço de memória. Um ponteiro é um tipo de dado que armazena valores booleanos. Um ponteiro é um tipo de dado que armazena funções que podem ser acessadas por qualquer parte do programa. Data Resp.: 24/10/2023 00:27:26 Explicação: Um ponteiro é uma variável que armazena um endereço de memória. Ele permite o acesso direto ao conteúdo da memória alocada para uma variável em um programa em C. Isso é especialmente útil quando queremos passar uma variável para uma função, mas não queremos copiar seu conteúdo inteiro para a memória. Em vez disso, passamos um ponteiro para a variável e permitimos que a função acesse o conteúdo da memória diretamente. 4. bidimensionais. heterogêneas. polivalentes. homogêneas. isonômicas. Data Resp.: 24/10/2023 00:30:26 Explicação: Estruturas de dados compostas homogêneas são aquelas em que as variáveis que as compõem têm o mesmo tipo primitivo, ou seja, são do mesmo tipo de dado. Por exemplo, um vetor de inteiros ou uma matriz de ponto 24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 3/6 Há duas maneiras de se passar argumentos ou parâmetros para funções: por valor e por referência. Sobre passagem de parâmetros, analise as seguintes a�rmativas: I. Na passagem por referência, o que é passado como argumento no parâmetro formal é o endereço da variável. II. Na passagem por valor, o valor é copiado do argumento para o parâmetro formal da função. III. Por exemplo, quando duas variáveis inteiras i1 e i2 são passadas por valor à função troca() chamada pelo programa principal, elas também são alteradas no programa principal. IV. Na passagem por referência, dentro da função, o argumento real utilizado na chamada é acessado através do seu endereço, sendo assim alterado. V. Na passagem por valor, quaisquer alterações feitas nestes parâmetros dentro da função não irão afetar as variáveis usadas como argumentos para chamá-la. Está CORRETO o que se a�rma em: Em relação ao uso e conceitos de procedimentos e funções em lógica de programação, analise as seguintes a�rmativas: I. Procedimentos e funções são blocos de instruções para realizar tarefas especí�cas e são considerados sub- rotinas. II. Em um procedimento, a passagem de parâmetros é obrigatória. III. Em uma função, a passagem de parâmetros e o retorno de um valor são obrigatórios. Está CORRETO o que se a�rma em: �utuante. Essas estruturas de dados são importantes para armazenar e manipular grandes quantidades de informações em uma forma estruturada e organizada, facilitando o acesso e a manipulação dos dados. MODULARIZAÇÃO 5. II e IV, apenas V, apenas I, II, IV e V, apenas I e III I, III e V, apenas Data Resp.: 24/10/2023 00:35:29 Explicação: Resposta correta: I, II, IV e V, apenas 6. I e II, apenas. II, apenas. I, apenas. I e III, apenas. II e III, apenas. Data Resp.: 24/10/2023 00:42:28 Explicação: Resposta correta: I, apenas. 24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 4/6 (FCC/ 2013) Insira os dados de entrada numa �la. Em seguida, retire cada dado da �la e insira numa pilha. Mostre a pilha. Depois retire os dados da pilha e insira na �la. Mostre a �la. Dados de entrada: 11, 12, 23, 14, 25, 50, 8, 18, 29, 10 As estruturas mostradas �cam I. Pilha: (topo) 10 - 29 - 18 - 8 - 50 - 25 - 14 - 23 - 12 - 11 II. Fila: (começo) 11 - 12 - 23 - 14 - 25 - 50 - 8 - 18 - 29 - 10 (�m) III. Fila: (começo) 10 - 29 - 18 - 8 - 50 - 25 - 14 - 23 - 12 - 11 (�m) IV. Pilha: (topo) 11 - 12 - 23 - 14 - 25 - 50 - 8 - 18 - 29 - 10 V. A �la mostrada �ca com os elementos em ordem invertida dos dados de entrada Está correto o que se a�rma APENAS em: LISTAS, PILHAS E FILAS 7. III e IV. I, III e V. II e IV. I, II e III. I, IV e V. Data Resp.: 24/10/2023 00:47:51 Explicação: Ao inserir na �la temos: 10,29,18,8,50,25,14,23,12,11 Ao inserir na pilha temos: 10 29 18 8 50 25 14 23 12 11 Retirando os dados da pilha e inserindo na �la: 10,29,18,8,50,25,14,23,12,11 24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 5/6 Levando em consideração a estrutura de dados do tipo "Pilha", analise os itens a seguir e, ao �nal, assinale a alternativa correta: I- Um elemento a ser removido é o que está há menos tempo na estrutura de dados. II- Um elemento a ser removido é o que está há mais tempo na estrutura de dados. III- Um elemento a ser inserido é colocado na base da pilha. Seja o seguinte código em Python cujo principal objetivo é implementar uma árvore binária. Marque a alternativa correta quanto a execução do código: 8. Apenas o item I é verdadeiro. Apenas os itens I e II são verdadeiros Apenas o item III é verdadeiro. Apenas o item II é verdadeiro. Apenas os itens II e III são verdadeiros. Data Resp.: 24/10/2023 00:48:53Explicação: A resposta correta é: Apenas o item I é verdadeiro. Como o elemento removido é sempre o último que foi inserido, este também será o elemento mais recente. ÁRVORES 9. A árvore criada no código acima é uma árvore binária de busca com todas as folhas no último nível. Não é possível inferir a topologia da árvore com base no código. A classe NotArvore implementa regras que garantem que os nós inseridos respeitam a ordem de inserção dos nós (maiores a direita e menores a esquerda). A árvore criada no código acima não é binária de busca. A árvore criada no código é binária de busca com altura 6, isto é, com 6 níveis distintos. Data Resp.: 24/10/2023 00:51:47 Explicação: Apesar de que a função NoArvore não tem regras quanto à inserção dos nós, a forma (e a ordem) de como os nós foram inseridos (55-35-75-65-85-25-45) formam uma árvore binária de busca. 24/10/2023, 00:59 UNIFAVIP: Alunos https://simulado.wyden.com.br/alunos/ 6/6 Ano: 2015 Banca: MP-RS Órgão: MP-RS Prova: Técnico em informática - Sistemas Imagine que temos números de 1 a 100 em uma árvore de pesquisa binária (ABP). Agora queremos procurar o número 50. Assinale a alternativa que apresenta a possível sequência de elementos da árvore consultada. Resultado: 10. 40 - 60 - 45 - 48 - 50. 42 - 60 - 20 - 48 - 50. 40 - 15 - 45 - 30 - 50. 40 - 10 - 45 - 30 - 50. 42 - 60 - 20 - 30 - 50. Data Resp.: 24/10/2023 00:57:08 Explicação: Resposta correta: 40 - 60 - 45 - 48 - 50. Não Respondida Não Gravada Gravada Exercício inciado em 24/10/2023 00:20:07.
Compartilhar