Buscar

ESTRUTURA DE DADOS EM C

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

Disciplina: ESTRUTURA DE DADOS EM C AV 
Aluno: 
Professor: MAURO CESAR MATIAS 
 
 
 02/03/2022 
 
 
Avaliação: 
8,0 
Nota Partic.: Av. Parcial.: 
2,0 
Nota SIA: 
10,0 pts 
 
 
 
 
 
ENSINEME: ÁRVORES 
 
 
 1. Ref.: 3992760 Pontos: 1,00 / 1,00 
 
 
Considerando a figura acima, que ilustra uma árvore de busca binária, assinale a opção correta. 
 
 
Se a referida árvore for balanceada, a inserção de um nó 5 fará que ele tome o lugar do nó 4, passando a 
ser o nó 5 a raiz da subárvore. 
 
Transformando essa árvore em uma nova árvore de ordem 2, as folhas teriam de estar no nível 2. 
 
Se a árvore em questão não for balanceada, então, com a remoção do nó 8, o nó 12 deve assumir a raiz 
da árvore. 
 
O percurso a percorrer nessa árvore na pré-ordem é 4 10 15 12 8. 
 Se a árvore em tela for balanceada, depois da inserção de um nó 9, o nó 12 assume a raiz da árvore. 
 
 
 2. Ref.: 3992678 Pontos: 1,00 / 1,00 
 
Ano: 2018 Banca: Avança SP Órgão: Escola de Formação Complementar do Exército - EsFCEx Prova: CFO - 
Informática 
A estrutura abaixo representa uma célula de uma árvore em linguagem C; 
typedef struct _no { 
 int chave; 
 struct _no *esq, *dir; 
} no; 
 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992760.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203992678.');
 
 
Assinale a alternativa correta sobre qual sequência será impressa ao executar um caminhamento na árvore 
abaixo, conforme o código escrito em linguagem C a seguir: 
void ordem (no *arvore) { 
 if (arvore != NULL) { 
 printf ( ¿%d¿, arvore -> chave); 
 ordem ( arvore -> esq ); 
 ordem ( arvore -> dir ); 
 } 
} 
 
 
CBDAXEY 
 ABCDEXY 
 
YXEABBC 
 
ABDCEYX 
 
AEXYBCD 
 
 
 
 
ENSINEME: ESTRUTURAS DE DADOS HETEROGÊNEAS 
 
 
 3. 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? 
 
 Calloc 
 Free 
 Malloc 
 Realloc 
 Clear 
 
 
 4. Ref.: 3990822 Pontos: 1,00 / 1,00 
 
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que 
seus componentes são: 
 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990821.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990822.');
 homogêneos e acesso não indexado. 
 heterogêneos e com acesso FIFO. 
 heterogêneos e com acesso LIFO. 
 homogêneos e de acesso aleatório por intermédio de índices. 
 heterogêneos e com acesso indexado-sequencial. 
 
 
 
 
ENSINEME: LISTAS, PILHAS E FILAS 
 
 
 5. Ref.: 6090499 Pontos: 0,00 / 1,00 
 
Se E (x) é uma função que insere "x" pela direita da fila F e D () é uma função que remove pela esquerda, a 
opção que mostra a sequência correta de operações que transforma a fila F = [ A, R, G, O, M ] em F = [ O, M, A, 
R ] é: 
 
 
D (), D(), D(), D(), E(R), E(A), E(O). 
 
D (), D(), D(), E(R), E(A), E(O). 
 D (), D(), D(), E(A), E(R). 
 D (), D(), D(), E(A), E(R), E(O). 
 
D (), D(), D(), D(), E(O), E(A), E(R). 
 
 
 6. Ref.: 3990861 Pontos: 1,00 / 1,00 
 
A maioria dos softwares de aplicação possui comandos de "Desfazer" e "Refazer". O 
primeiro desfaz a última operação ou texto digitado, enquanto que, o segundo refaz uma 
operação ou texto desfeito, conforme sugerem os nomes dos comandos. 
Internamente, nos softwares, podem ser usadas duas estruturas de dados que armazenam 
as sucessivas operações de "Desfazer" e "Refazer", de modo que o próximo 
"Refazer" sempre recupera o último "Desfazer". Os tipos de estrutura de dados que podem 
ser usados para "Desfazer" e "Refazer" são, respectivamente: 
 
 Pilha e Pilha 
 Pilha e Fila duplamente encadeada 
 Pilha e Fila 
 Fila e Pilha 
 Fila e Fila 
 
 
 
 
ENSINEME: MODULARIZAÇÃO 
 
 
 7. Ref.: 3993215 Pontos: 1,00 / 1,00 
 
Observe o trecho de código abaixo, escrito na linguagem C. 
void quadrado(float *r, float *t); 
int main() { 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%206090499.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990861.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203993215.');
 float 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 afirmar que as variáveis a e b 
 
 
São parâmetros formais na chamada da função quadrado() dentro da função main(). 
 Indicam, quando precedidas pelo caracter &, que os parâmetros podem ser modificados pelas funções 
scanf() e quadrado(). 
 
Não podem ser modificadas pela função quadrado(), porque a passagem de parâmetros é por valor. 
 
Podem ser modificadas pela função printf(), porque a passagem de parâmetros é por valor. 
 
São utilizadas como passagem de parâmetros por resultado na função printf(). 
 
 
 8. Ref.: 3993169 Pontos: 0,00 / 1,00 
 
Na linguagem de programação em C, as funções permitem a criação de programas em módulos, em que todas as 
variáveis, que são descritas nas definições de função, são locais, pois são conhecidas apenas na função em que 
são definidas. Cada biblioteca‐padrão tem um cabeçalho que contém os protótipos de função para todas as 
funções nessa biblioteca, assim como definições de vários tipos de dados e constantes que são necessárias para 
estas funções. Uma dessas bibliotecas tem a seguinte explicação: contém as definições comuns de tipo usadas 
pela C para realizar cálculos. Assinale‐a. 
 
 stddef.h 
 
stdio.h 
 
assert.h 
 math.h 
 
locale.h 
 
 
 
 
ENSINEME: ORDENAÇÃO 
 
 
 9. Ref.: 3990840 Pontos: 1,00 / 1,00 
 
É correto afirmar que: 
 
 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 buble sort é um algoritmo de ordenação instável. 
 O Insert sort é um método de ordenação instável. 
 O Selection Sort tem complexidade computacional O(n log n) 
 O buble sort é um algoritmo recursivo. 
 
 
 10. Ref.: 3990834 Pontos: 1,00 / 1,00 
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203993169.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990840.');
javascript:alert('C%C3%B3digo%20da%20quest%C3%A3o:%203990834.');
 
Algoritmos de ordenação baseados em comparação entre elementos da sequência tem 
complexidade computacional mínima de: 
 
 O(n log n) 
 O(log n) 
 O(n) 
 O(n33) 
 O(n22)

Continue navegando