Baixe o app para aproveitar ainda mais
Prévia do material em texto
22/10/2023, 11:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 1/6 Avaliando Aprendizado Teste seu conhecimento acumulado Disc.: ESTRUTURA DE DADOS EM C Aluno(a): FABIANE FREIRE SANTOS FREITAS 202208313906 Acertos: 2,0 de 2,0 22/10/2023 Acerto: 0,2 / 0,2 (IF-RS/2016 - Adaptada) Estrutura de dados é um conceito fundamental na ciência da computação e na programação. Ela se refere a maneira como os dados são organizados e armazenados em um programa ou sistema, a �m de que possam ser acessados, manipulados e utilizados de forma e�ciente. Referente a alocação dinâmica de memória em C, é correto a�rmar: A função malloc usa o número de blocos de memória que serão alocados na memória. As funções malloc e free e o operador sizeof, são essenciais para a alocação dinâmica de memória. A função clear é usada para limpar o conteúdo de um ponteiro. A função free é geralmente usada com o operador sizeof. As funções calloc e realloc são usadas para liberar arays. Respondido em 22/10/2023 11:19:56 Explicação: A alocação dinâmica de memória em C é uma técnica importante que permite que o programador aloque memória em tempo de execução. As funções malloc e free são usadas para alocar e liberar a memória, respectivamente. Já o operador sizeof é usado para determinar o tamanho em bytes de um tipo de dado ou de uma variável. Acerto: 0,2 / 0,2 Essas variáveis que são declaradas fora da sub-rotina, podendo ser acessíveis em todos os escopos, em qualquer lugar de um programa, disponíveis durante toda a execução do programa. Marque a alternativa que apresenta o tipo de variável descrito acima. Global. Única. Formais. Local. Paramétricas. Respondido em 22/10/2023 11:23:45 Explicação: Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); javascript:voltar(); 22/10/2023, 11:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/6 As variáveis globais são declaradas fora da sub-rotina. São acessíveis em todos os escopos, em qualquer ponto de um programa, mesmo em outros módulos. Podem, portanto, ser usadas ou modi�cadas por qualquer sub-rotina do programa onde estão declaradas. Em outras palavras, as variáveis globais estão disponíveis durante toda a execução do programa. Acerto: 0,2 / 0,2 (IBADE/2022) Uma estrutura de dados onde existe uma coleção ordenada de entidades sendo a metodologia de busca com base no deslocamento relativo ao primeiro (cabeça) da coleção, chama-se: árvore binária. árvore. pilha. �la. lista. Respondido em 22/10/2023 11:25:09 Explicação: O nó cabeça é um conceito comum em estruturas de dados, especialmente em listas encadeadas. É um nó �ctício que não armazena dados reais, mas serve como uma referência para o início da lista. Ele facilita o acesso aos elementos da lista, bem como a manipulação da lista, como inserção e remoção de elementos. Acerto: 0,2 / 0,2 (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). Merge sort. Quick sort. Insertion sort. Selection sort. Bubble sort. Respondido em 22/10/2023 11:28:56 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. Acerto: 0,2 / 0,2 Seja a seguinte árvore, marque a opção correta que indica o porquê a árvore abaixo não é uma árvore binária de busca: Questão3 a Questão4 a Questão5 a 22/10/2023, 11:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 3/6 Não é uma árvore binária de busca pois o nó 35 deveria estar inserido à direita do nó 20. Não é uma árvore binária de busca pois está desbalanceada. Não é uma árvore binária de busca pois esta árvore deve estar com os níveis de suas folhas todas igualmente perfeitas. Não é uma árvore binária de busca pois essa árvore deve estar perfeitamente balanceada. Não é uma árvore binária de busca pois o nó 22 deveria estar inserido à direita do nó 20. Respondido em 22/10/2023 11:13:22 Explicação: Uma árvore binária de busca são árvores que obedecem às seguintes propriedades: Dado um nó qualquer da árvore binária, todos os nós à esquerda dele são menores ou iguais a ele. Dado um nó qualquer da árvore binária, todos os nós à direita dele são maiores ou iguais a ele. Observe que a sub-árvore 20-22 não respeita a regra básica, portanto, o nó 22 deveria estar a direita do nó 20. Acerto: 0,2 / 0,2 (COTEC/2013 - Adaptada) A linguagem C permite alocar (reservar) dinamicamente (em tempo de execução) blocos de memórias utilizando ponteiros. A esse processo dá-se o nome de alocação dinâmica, que faz uso das funções malloc, calloc, realloc e free, disponíveis na biblioteca stdlib.h. Para liberar um bloco de memória previamente alocado, por meio de um único parâmetro de entrada, faz-se uso de qual função? Realloc. Malloc. Calloc. Hiplloc. Free. Respondido em 22/10/2023 11:16:18 Explicação: A função "free" é responsável por liberar a memória previamente alocada pelo programador com as funções "malloc", "calloc" ou "realloc". Ela recebe como parâmetro um ponteiro para o primeiro byte da memória alocada e libera toda a área de memória correspondente. Acerto: 0,2 / 0,2 As sub-rotinas são procedimentos e funções da programação modularizada. Um parâmetro passado por valor para uma sub-rotina se comportará como uma variável local, isto é, qualquer modi�cação no valor desta variável não será visível fora da sub-rotina. Sobre a passagem de parâmetros, analise as a�rmativas abaixo. Questão6 a Questão7 a 22/10/2023, 11:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 4/6 I - Na passagem por valor ocorre uma troca de valores entre variáveis na sub-rotina. II - Na passagem por valor ocorre uma cópia do valor da variável em todas as posições de memória, sendo possível alterar o conteúdo da variável original a qualquer momento. III - A passagem por referência nunca deve ser utilizada. Marque a alternativa que apresenta a(s) a�rmativa(s) correta(s). Apenas a a�rmativa I está correta. Apenas as a�rmativas II e III estão corretas. As a�rmativas I, II e III estão corretas. Apenas as a�rmativas I e II estão corretas. Apenas as a�rmativas I e III estão corretas. Respondido em 22/10/2023 11:30:03 Explicação: A a�rmativa II está incorreta. Na passagem por valor, é feita uma cópia do valor da variável, mas essa cópia não é armazenada em todas as posições de memória. Alterações feitas na cópia da variável dentro da sub-rotina não afetarão o conteúdo da variável original fora da sub-rotina. A a�rmativa III está incorreta. A passagem por referência pode ser utilizada em determinadas situações, quando se deseja que uma sub-rotina seja capaz de modi�car diretamente o conteúdo da variável original. Ela envolve a passagem do endereço onde se encontra a variável usada como argumento na chamada da sub-rotina. Acerto: 0,2 / 0,2 Sobre listas duplamente encadeadas, a�rma-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: I e III. I. III. II e III. II. Respondido em 22/10/2023 11:17:31 Explicação: A resposta correta é: I. Acerto: 0,2 / 0,2 Questão8 a Questão9 a 22/10/2023, 11:30 Estácio: Alunoshttps://simulado.estacio.br/alunos/ 5/6 Comparando o Merge Sort com o Método da bolha podemos a�rmar que: O merge sort, por ser instável, sempre executará em tempo superior ao buble sort. O buble sort sempre irá executar mais rápido que o merge sort por ter complexidade computacional inferior ao merge sort. O merge sort tem complexidade computacional inferior ao buble sort, porém o merge sort sempre executa em um tempo proporcional a n log n, enquanto o buble sort, pode executar em tempo linear em algumas instâncias (melhores casos). Ambos têm complexidade comparável, assim, existem não é possível a�rmar qual irá executar em melhor tempo. O merge sort sempre executará mais rápido que o buble sort uma vez que sua complexidade é O(n log n) e a do buble sort O(n ). Respondido em 22/10/2023 11:15:03 Explicação: A resposta correta é: O merge sort tem complexidade computacional inferior ao buble sort, porém o merge sort sempre executa em um tempo proporcional a n log n, enquanto o buble sort, pode executar em tempo linear em algumas instâncias (melhores casos). Acerto: 0,2 / 0,2 As rotações são operações fundamentais para ajuste da propriedade AVL. Analise as a�rmativas abaixo. I - A inserção de uma nova chave em uma árvore AVL pode desregular diversos nós no caminho da raiz até a folha onde a nova chave foi inserida. Só é necessário aplicar uma rotação no nó mais profundo desregulado. Porque II - A aplicação da rotação resulta em uma subárvore com a mesma altura da subárvore original, isto é, antes da inserção da nova chave. Marque a alternativa correta. As duas a�rmativas são falsas. A primeira a�rmativa é falsa e a segunda a�rmativa é verdadeira. A primeira a�rmativa é verdadeira e a segunda a�rmativa é falsa. As duas a�rmativas estão corretas e a segunda não justi�ca a primeira. As duas a�rmativas estão corretas e a segunda justi�ca a primeira. Respondido em 22/10/2023 11:16:50 Explicação: As operações de rotação preservam a altura da árvore original, isto é, imagine que v é a raiz da subárvore Tv que �cará desregulada após a inserção. Antes da inserção Tv tem altura h, depois da inserção Tv terá altura h+1, porém v está desregulado. Ao aplicar a rotação Tv volta a ter altura h, por isso, eventuais nós ancestrais de v que estivessem desregulados voltam a estar regulados. 2 Questão10 a 22/10/2023, 11:30 Estácio: Alunos https://simulado.estacio.br/alunos/ 6/6
Compartilhar