Buscar

dados estruturados 2 simulado

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 7 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

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 6, do total de 7 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

Prévia do material em texto

1a 
 Questão 
Acerto: 1,0 / 1,0 
 
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 
 
Clear 
 
Malloc 
 
Realloc 
Respondido em 29/04/2023 10:43:09 
 
Explicação: 
A resposta correta é: Free 
 
 
2a 
 Questão 
Acerto: 1,0 / 1,0 
 
Leia o programa abaixo, verifique o que a função func3() faz e assinale qual das 
opções será impressa na saída após a execução. 
 
#include < stdio.h > 
 
typedef struct pessoa 
 { 
 char nome[40]; 
 int idade; 
 float 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 
 
Alcogelson Medeiros 60 12500,00 
 
Paulo Lokidown 51 12000,00 
 
Maria Estrela 50 10000,00 
 
Maria Estrela 60 12500,00 
Respondido em 29/04/2023 10:45:52 
 
Explicação: 
A função func3 recebe três estruturas pessoa como argumentos e imprime o nome da 
primeira estrutura (Maria Estrela), a idade da segunda (51) e o salário da terceira 
(12500.00). 
 
 
3a 
 Questão 
Acerto: 1,0 / 1,0 
 
Observe o trecho de código abaixo, escrito na linguagem C. 
void imprimecabecalho() { 
 ... 
} 
void calcula() { 
 int soma; 
 ... 
 imprimecabecalho(); 
} 
Com base nesse código, é correto afirmar que: 
 
 
O escopo da variável soma se estende da função calcula() para a função 
imprimecabecalho(). 
 
O escopo da variável soma é contido pela função imprimecabecalho(). 
 O tempo de vida da variável soma estende-se durante o tempo em que a 
função imprimecabecalho() é executada. 
 
O escopo da variável soma é dinâmico e se estende durante toda execução 
do programa. 
 
O escopo e o tempo de vida da variável soma são iguais e contidos pela 
função imprimecabecalho(). 
Respondido em 29/04/2023 10:58:24 
 
Explicação: 
Resposta correta: o tempo de vida da variável soma estende-se durante o tempo em que a 
função imprimecabecalho() é executada. 
 
 
4a 
 Questão 
Acerto: 1,0 / 1,0 
 
A modularização de algoritmos é importante para organizar melhor o código, facilitar 
a manutenção, entre outras coisas. Sobre funções e procedimentos, assinale a 
alternativa CORRETA sobre a modularização: 
 
 
A passagem de parâmetros para um subprograma pode ser somente por 
valor. 
 
O procedimento sempre retorna um valor ao programa. 
 
As variáveis locais são declaradas no escopo do programa inteiro. 
 
As variáveis definidas no escopo de cada função são acessíveis em todo o 
programa. 
 A função retorna um valor ao programa. 
Respondido em 29/04/2023 10:51:00 
 
Explicação: 
Resposta correta: A função retorna um valor ao programa. 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
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 sequencial, Lista em alocação encadeada e deque. 
 
Lista em alocação sequencial, Lista circular e Lista em alocação 
encadeada. 
 
Lista em alocação encadeada, Lista em alocação sequencial e deque. 
 
Lista em alocação encadeada, Lista circular e Lista em alocação 
sequencial. 
Respondido em 29/04/2023 10:52:36 
 
Explicação: 
A resposta correta é: Lista em alocação sequencial, Lista em alocação 
encadeada e deque. 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
(IBFC/2022 - Adaptada) Assinale, das alternativas abaixo, a única que identifica 
respectivamente uma Estrutura de Dados do tipo FIFO (First In, First Out) e uma 
outra com a Estrutura de dados do tipo LIFO (Last In, First Out): 
 
 
matriz - vetor 
 fila - pilha 
 
lista - vetor 
 
vetor - lista 
 
pilha - fila 
Respondido em 29/04/2023 10:55:26 
 
Explicação: 
Filas e Pilhas são estruturas de dados lineares que permitem o armazenamento e acesso a 
elementos. Ambas são utilizadas para armazenar coleções de elementos, mas possuem 
diferenças importantes no que diz respeito ao princípio de acesso aos elementos. 
 
Uma fila é uma estrutura de dados baseada no princípio First In, First Out (FIFO), ou seja, o 
primeiro elemento a ser adicionado é o primeiro a ser removido. É como se fosse uma fila de 
pessoas, onde a primeira pessoa a chegar é a primeira a ser atendida. As operações de 
inserção e remoção são chamadas de enfileirar e desenfileirar, respectivamente. 
 
Já uma pilha é uma estrutura de dados baseada no princípio Last In, First Out (LIFO), ou 
seja, o último elemento a ser adicionado é o primeiro a ser removido. É como se fosse uma 
pilha de pratos, onde o último prato colocado é o primeiro a ser retirado. O LIFO é a base 
para as operações de empilhamento e desempilhamento, que permitem adicionar e remover 
elementos na pilha, respectivamente. 
 
 
 
7a 
 Questão 
Acerto: 1,0 / 1,0 
 
Comparando o Merge Sort com o Método da bolha podemos afirmar que: 
 
 
O merge sort, por ser instável, sempre executará em tempo superior 
ao buble 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). 
 
O buble sort sempre irá executar mais rápido que o merge sort por ter 
complexidade computacional inferior ao merge sort. 
 
Ambos têm complexidade comparável, assim, existem não é possível 
afirmar 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(n22). 
Respondido em 29/04/2023 10:56:01 
 
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). 
 
 
8a 
 Questão 
Acerto: 1,0 / 1,0 
 
Sobre o método da bolha é correto afirmar que: 
 
 O tempo de execução pode ser linear em relação ao tamanho da entrada 
se a instância apresentada já estiver ordenada. 
 
A complexidade computacional deste algoritmo é O (n log n). 
 
O algoritmo executa sempre no mesmo tempo para instâncias de mesmo 
tamanho n. 
 
O tempo de execução é definido pela complexidade computacional 
sempre, independentemente da instância apresentada. 
 
O tempo de execução pode ser linear em relação ao tamanho da entrada 
se a instância apresentada estiver ordenada em ordem reversa a 
desejada. 
Respondido em 29/04/2023 10:56:34 
 
Explicação: 
A resposta correta é: O tempo de execução pode ser linear em relação ao 
tamanho da entrada se a instância apresentada já estiver ordenada. 
 
 
9a 
 Questão 
Acerto: 1,0 / 1,0 
 
As rotações são operações fundamentais para ajuste da propriedade AVL. Analise as 
afirmativas 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árioaplicar 
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. 
 
 
A primeira afirmativa é falsa e a segunda afirmativa é verdadeira. 
 
As duas afirmativas são falsas. 
 As duas afirmativas estão corretas e a segunda justifica a primeira. 
 
A primeira afirmativa é verdadeira e a segunda afirmativa é falsa. 
 
As duas afirmativas estão corretas e a segunda não justifica a primeira. 
Respondido em 29/04/2023 10:57:03 
 
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 ficará 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. 
 
 
10a 
 Questão 
Acerto: 1,0 / 1,0 
 
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: 
 
 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. 
 
A complexidade da inserção é sempre O(n), independentemente da altura da 
árvore. 
 
O algoritmo de inserção em árvores binárias de busca é estático, isto é, é 
necessário recalcular toda árvore para inserir uma nova chave. 
Respondido em 29/04/2023 10:57:31 
 
Explicação: 
Todas as chaves serão inseridas em 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.

Continue navegando