Baixe o app para aproveitar ainda mais
Prévia do material em texto
Acertos: 2,0 de 2,0 22/10/2023 1a Questão Acerto: 0,2 / 0,2 (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 definição, estruturas compostas: isonômicas. polivalentes. homogêneas. heterogêneas. bidimensionais. Respondido em 22/10/2023 17:31:29 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 flutuante. 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. 2a Questão Acerto: 0,2 / 0,2 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 afirmativas: 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 afirma em: I, II, IV e V, apenas V, apenas I e III II e IV, apenas I, III e V, apenas Respondido em 22/10/2023 17:32:28 Explicação: Resposta correta: I, II, IV e V, apenas 3a Questão Acerto: 0,2 / 0,2 Sobre listas duplamente encadeadas, afirma-se: I) Cada nó usa o dobro do número de campos ponteiro de uma lista simplesmente encadeada. II) A complexidade de remoção é metade da complexidade de remoção em lista simplesmente encadeada. III) Não permitem a inserção de nó no meio da lista. É correto apenas: II. I. III. I e III. II e III. Respondido em 22/10/2023 17:33:04 Explicação: A resposta correta é: I. 4a Questão Acerto: 0,2 / 0,2 Algoritmos de ordenação baseados em comparação entre elementos da sequência tem complexidade computacional mínima de: O(n22) O(log n) O(n) O(n33) O(n log n) Respondido em 22/10/2023 17:33:31 Explicação: A resposta correta é: O(n log n) 5a Questão Acerto: 0,2 / 0,2 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: 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. 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 é uma árvore binária de busca com todas as folhas no último nível. Respondido em 22/10/2023 17:34:37 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. Resultado: 6a Questão Acerto: 0,2 / 0,2 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 define o conceito de ponteiro na linguagem C? Um ponteiro é um tipo de dado inteiro que permite armazenar valores maiores que o limite permitido pelo tipo int. Um ponteiro é um tipo de dado que armazena valores booleanos. Um ponteiro é uma função que permite manipular vetores e matrizes. Um ponteiro é um tipo de dado que armazena funções que podem ser acessadas por qualquer parte do programa. Um ponteiro é uma variável que armazena um endereço de memória. Respondido em 22/10/2023 17:35:31 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. 7a Questão Acerto: 0,2 / 0,2 Em relação ao uso e conceitos de procedimentos e funções em lógica de programação, analise as seguintes afirmativas: I. Procedimentos e funções são blocos de instruções para realizar tarefas específicas 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 afirma em: I e III, apenas. I e II, apenas. II e III, apenas. II, apenas. I, apenas. Respondido em 22/10/2023 17:35:51 Explicação: Resposta correta: I, apenas. 8a Questão Acerto: 0,2 / 0,2 Levando em consideração a estrutura de dados do tipo "Pilha", analise os itens a seguir e, ao final, 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. Apenas o item III é verdadeiro. Apenas o item I é verdadeiro. Apenas os itens I e II são verdadeiros Apenas o item II é verdadeiro. Apenas os itens II e III são verdadeiros. Respondido em 22/10/2023 17:36:19 Explicaçã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. 9a Questão Acerto: 0,2 / 0,2 Todos os algoritmos de ordenação interna devem ter complexidade de espaço de: O(n) O(n22) O(1) O(n log n) O(n33) Respondido em 22/10/2023 17:37:10 Explicação: A resposta correta é: O(n) 10a Questão Acerto: 0,2 / 0,2 As árvores binárias de busca são especializações das árvores binárias que permitem uma melhor organização dos algoritmos de busca. Sobre a inserção de uma nova chave em uma árvore binária de busca é correto afirmar que: O algoritmo de inserção em árvores binárias de busca é estático, isto é, é necessário recalcular toda árvore para inserir uma nova chave. A complexidade da inserção é sempre O(n), independentemente da altura da árvore. Todas as chaves são inseridas em folhas, a posição da folha é determinada pela busca. Toda nova chave é inserida obrigatoriamente na raiz. Para determinar a posição da nova chave é necessário calcular o percurso em ordem simétrica da árvore obtida. Com este percurso, verifica-se se a sequência está ordenada em ordem crescente. Caso esteja, a posição da nova chave está correta. Respondido em 22/10/2023 17:37:50 Explicação: Todas as chaves serão inseridasem folhas, considerando que na árvore binária de busca o objetivo é buscar pela posição correta de inserção dos dados e inserir (a esquerda ou a direita) o nó considerado, além de que em árvores binárias de busca não existem regras que mantenham o balanceamento da árvore.
Compartilhar