Buscar

Estácio Estrutura de Dados em C - 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 6 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 6 páginas

Prévia do material em texto

04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 1/6
 
Meus
Simulados
Teste seu conhecimento acumulado
Disc.: ESTRUTURA DE DADOS EM C   
Aluno(a): RAISSA DE CASTRO HOBAIK 202202629431
Acertos: 10,0 de 10,0 23/05/2023
Acerto: 1,0  / 1,0
Referente a alocação dinâmica de memória em C, é CORRETO a�rmar: 
 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 malloc usa o número de blocos de memória que serão alocados na memória. 
A função free é geralmente usada com o operador sizeof.  
A função clear é usada para limpar o conteúdo de um ponteiro. 
As funções calloc e realloc são usadas para liberar arrays. 
Respondido em 23/05/2023 15:00:16
Explicação:
A resposta correta é: As funções malloc e free e o operador sizeof, são essenciais para a alocação
dinâmica de memória. 
Acerto: 1,0  / 1,0
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.
 
#include < stdio.h >
 
typedef struct pessoa
 {
 char nome[40];
 int idade;
 �oat salario;
 Questão1
a
 Questão2
a
https://simulado.estacio.br/alunos/inicio.asp
javascript:voltar();
04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 2/6
};
 
 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
Maria Estrela 60  12500,00
Maria Estrela 50  10000,00
Paulo Lokidown  51  12000,00
Alcogelson Medeiros 60  12500,00
Respondido em 23/05/2023 15:01:26
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).
Acerto: 1,0  / 1,0
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 a�rmativas:
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 a�rma em:
V, apenas
 Questão3
a
04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 3/6
I, III e V, apenas
 I, II, IV e V, apenas
I e III
II e IV, apenas
Respondido em 23/05/2023 15:04:24
Explicação:
Resposta correta: I, II, IV e V, apenas
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.
As variáveis locais são declaradas no escopo do programa inteiro.
O procedimento sempre retorna um valor ao programa.
 A função retorna um valor ao programa.
As variáveis de�nidas no escopo de cada função são acessíveis em todo o programa.
Respondido em 23/05/2023 15:05:52
Explicação:
Resposta correta: A função retorna um valor ao programa.
Acerto: 1,0  / 1,0
Uma lista ordenada alocada sequencialmente possui como desvantagem: 
 Tamanho limitado de memória alocada para lista.
Impossibilidade de acesso direto. 
Complexidade O(n) para a busca.
A reserva de memória em posições contíguas. 
Impossibilidade de remoção no meio da lista. 
Respondido em 23/05/2023 15:06:31
Explicação:
A resposta correta é: Tamanho limitado de memória alocada para lista.
Acerto: 1,0  / 1,0
Levando em consideração a estrutura de dados do tipo "Pilha", analise os itens a seguir e, ao �nal,
assinale a alternativa correta: 
I- Um elemento a ser removido é o que está há menos tempo na estrutura de dados. 
 Questão4
a
 Questão5
a
 Questão6
a
04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 4/6
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 os itens II e III são verdadeiros. 
Apenas o item III é verdadeiro. 
Apenas o item II é verdadeiro. 
Apenas os itens I e II são verdadeiros 
 Apenas o item I é verdadeiro. 
Respondido em 23/05/2023 15:07:20
Explicação:
A resposta correta é: Apenas o item I é verdadeiro. 
Acerto: 1,0  / 1,0
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. 
Ambos têm complexidade comparável, assim, existem não é possível a�rmar qual irá executar em
melhor tempo. 
 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 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 23/05/2023 15:07:55
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: 1,0  / 1,0
Sobre o método da bolha é correto a�rmar que: 
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. 
O tempo de execução é de�nido 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 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. 
Respondido em 23/05/2023 15:08:39
2
 Questão7
a
 Questão8
a
04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 5/6
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. 
Acerto: 1,0  / 1,0
Seja a seguinte árvore, marque a opção correta que indica o porquê a árvore abaixo não é uma árvore binária de
busca:
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ó 35 deveria estar inserido à direita do nó 20.
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 está desbalanceada.
 Não é uma árvore binária de busca pois o nó 22 deveria estar inserido à direita do nó 20.
Respondido em 23/05/2023 15:09:07
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 respeitaa regra básica, portanto, o nó 22 deveria estar a direita do nó 20.
Acerto: 1,0  / 1,0
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:
 Questão9
a
 Questão10
a
04/06/2023, 13:20 Estácio: Alunos
https://simulado.estacio.br/alunos/ 6/6
 A árvore criada no código acima é uma árvore binária de busca com todas as folhas no último nível.
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).
Respondido em 23/05/2023 15:09:59
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:

Continue navegando