Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: ESTRUTURA DE DADOS EM C AV Aluno: MANUEL FERREIRA DA SILVA FILHO 202208107729 Turma: 9001 DGT0298_AV_202208107729 (AG) 05/03/2024 17:16:30 (F) Avaliação: 9,00 pts Nota SIA: 9,00 pts ENSINEME: ÁRVORES 1. Ref.: 7808330 Pontos: 1,00 / 1,00 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 é verdadeira e a segunda a�rmativa é falsa. As duas a�rmativas estão corretas e a segunda não justi�ca a primeira. A primeira a�rmativa é falsa e a segunda a�rmativa é verdadeira. As duas a�rmativas estão corretas e a segunda justi�ca a primeira. 2. Ref.: 7808329 Pontos: 1,00 / 1,00 Existem vários tipos diferentes de árvores de busca, como árvores binárias, AVL e árvores B. Nesse sentido, marque a opção correta sobre os procedimentos de rotação em árvores AVL: Uma rotação dupla à esquerda de um nó x acontece quando um desbalanceamento de x acontece à esquerda. Uma rotação dupla à direita de um nó x acontece quando um desbalanceamento de x acontece à direita. Uma rotação simples à esquerda de um nó x acontece quando um desbalanceamento de x acontece à direita. Uma rotação simples à direita de um nó x acontece quando um desbalanceamento de x acontece à direita. Uma rotação simples à esquerda de um nó x acontece quando um desbalanceamento de x acontece à esquerda. ENSINEME: ESTRUTURAS DE DADOS HETEROGÊNEAS 3. Ref.: 7816657 Pontos: 1,00 / 1,00 Leia o programa abaixo, veri�que o que a função func3() faz e assinale qual das opções será impressa na saída após a execução. javascript:alert('C%C3%B3digo da quest%C3%A3o: 7808330.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7808330.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7808329.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7808329.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7816657.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7816657.'); #include < stdio.h > typedef struct pessoa { char nome[40]; int idade; �oat salario; }; void func3(struct pessoa f1, struct pessoa f2, struct pessoa f3) { printf("%s %d %.2f\n",f1.nome, f2.idade, f3.salario); } main() { struct pessoa p1 = {"Maria Estrela",50,10000.00}; struct pessoa p2 = {"Alcogelson Medeiros",51,12000.00}; struct pessoa p3 = {"Paulo Lokidown",60,12500.00}; func3(p1,p2,p3); } Assinale a opção correta. Maria Estrela 51 12500,00 Paulo Lokidown 51 12000,00 Maria Estrela 50 10000,00 Maria Estrela 60 12500,00 Alcogelson Medeiros 60 12500,00 4. Ref.: 3990821 Pontos: 1,00 / 1,00 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? Clear Free Calloc Malloc Realloc javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990821.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990821.'); ENSINEME: LISTAS, PILHAS E FILAS 5. Ref.: 3990862 Pontos: 1,00 / 1,00 Sejam as seguintes propriedades de estruturas de dados: I- a remoção de um elemento interno obriga ao deslocamento de todos os sucessores. II- Um nó pode ser inserido no meio da estrutura com complexidade O (1). III- a inserção e a remoção podem ser feitas em ambas as extremidades. As descrições acima se referem respectivamente à: Lista em alocação sequencial, Lista em alocação sequencial e deque. Lista em alocação encadeada, Lista circular e Lista em alocação sequencial. Lista em alocação encadeada, Lista em alocação sequencial e deque. Lista em alocação sequencial, Lista circular e Lista em alocação encadeada. Lista em alocação sequencial, Lista em alocação encadeada e deque. 6. Ref.: 7807980 Pontos: 1,00 / 1,00 (FGV/2022) Júlio está desenvolvendo uma aplicação e precisa implementar um mecanismo de desfazer/refazer de um editor de texto utilizando o algoritmo LIFO (Last In, First Out). Para implementar o algoritmo LIFO, Júlio deve usar a estrutura de dados: árvore. pilha. tabela hash. �la. nó folha. ENSINEME: MODULARIZAÇÃO 7. Ref.: 3993174 Pontos: 1,00 / 1,00 Considere o código a seguir escrito na linguagem C. #include Int main() { printf(¿Valor total: %.1f\n¿, 9,1415169265); return(0); } Assinale a alternativa que apresenta a saída correta. Valor total: 9.142 Valor total: 9.141517e+00 Valor total: 9.1 javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990862.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990862.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7807980.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7807980.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993174.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993174.'); Valor total: 9.14 Valor total: 9.141517 8. Ref.: 3993215 Pontos: 1,00 / 1,00 Observe o trecho de código abaixo, escrito na linguagem C. void quadrado(�oat *r, �oat *t); int main() { �oat a, b; printf("Entre com um numero complexo (2 numeros inteiros):"); scanf("%f %f", &a, &b); quadrado(&a, &b); printf("O quadrado do numero e %f + i %f\n", a, b); } Com base nesse código, é correto a�rmar que as variáveis a e b São parâmetros formais na chamada da função quadrado() dentro da função main(). São utilizadas como passagem de parâmetros por resultado na função printf(). Indicam, quando precedidas pelo caracter &, que os parâmetros podem ser modi�cados pelas funções scanf() e quadrado(). Não podem ser modi�cadas pela função quadrado(), porque a passagem de parâmetros é por valor. Podem ser modi�cadas pela função printf(), porque a passagem de parâmetros é por valor. ENSINEME: ORDENAÇÃO 9. Ref.: 3990840 Pontos: 0,00 / 1,00 É correto a�rmar que: O buble sort é um algoritmo recursivo. O buble sort, o insert sort e o selection sort tem a mesma complexidade computacional, porém, isto não quer dizer que todos executem ao mesmo tempo para a mesma instância. O Selection Sort tem complexidade computacional O(n log n) O buble sort é um algoritmo de ordenação instável. O Insert sort é um método de ordenação instável. 10. Ref.: 7838631 Pontos: 1,00 / 1,00 (UFFS/2014 - Adaptada) Em computação, é comum encontrar diversas abreviações e siglas que são usadas para se referir a termos e conceitos especí�cos. Os termos Quick, Merge, Heap e Bubble representam, respectivamente: Métricas da Engenharia de Software. Métodos de Ordenação. Métodos de Compilação. Métodos de Desenvolvimento. javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993215.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993215.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990840.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990840.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7838631.'); javascript:alert('C%C3%B3digo da quest%C3%A3o: 7838631.'); Métodos de DBA.
Compartilhar