Buscar

ESTRUTURA DE DADOS EM C SIMULADO 1

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

1a
          Questão
	Acerto: 1,0  / 1,0
	
	Referente a alocação dinâmica de memória em C, é CORRETO afirmar: 
		
	
	A função clear é usada para limpar o conteúdo de um ponteiro. 
	 
	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.  
	
	As funções calloc e realloc são usadas para liberar arrays. 
	Respondido em 10/04/2023 14:40:06
	
	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. 
	
		2a
          Questão
	Acerto: 1,0  / 1,0
	
	Considere a definição da seguinte struct escrita em linguagem de programação C. 
struct endereço {  
char logradouro [50]; 
int numero; 
char cidade[30]; 
char estado[2];  
} end1; 
A alternativa que manipula corretamente a struct acima definida é: 
		
	
	Para criar um array de structs endereco: struct endereco[10]; 
	
	Para copiar o conteúdo das variáveis de end1 para end2: end1.strcpy = end2; 
	
	Para armazenar a string  "RJ" na variável estado: endereco.estado= "RJ"
	 
	Para armazenar um valor inteiro na variável numero: scanf("%d",&end1.numero);
	
	Para mostrar o conteúdo da variável logradouro: printf("%s", logradouro.end1);
	Respondido em 10/04/2023 14:47:15
	
	Explicação:
Correta: Para armazenar um valor inteiro na variável numero: scanf("%d",&end1.numero).
	
		3a
          Questão
	Acerto: 1,0  / 1,0
	
	Em relação ao uso e conceitos de procedimentos e funções em lógica de programação, analise as seguintes afirmativas:
I. Procedimentos e funções são blocos de instruções para realizar tarefas específicas e são considerados sub-rotinas.
II. Em um procedimento, a passagem de parâmetros é obrigatória.
III. Em uma função, a passagem de parâmetros e o retorno de um valor são obrigatórios.
Está CORRETO o que se afirma em:
		
	
	II, apenas.
	
	I e II, apenas.
	
	II e III, apenas.
	
	I e III, apenas.
	 
	I, apenas.
	Respondido em 10/04/2023 14:52:59
	
	Explicação:
Resposta correta: I, apenas.
	
		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:
		
	
	O procedimento sempre retorna um valor ao programa.
	
	As variáveis definidas no escopo de cada função são acessíveis em todo o programa.
	
	As variáveis locais são declaradas no escopo do programa inteiro.
	
	A passagem de parâmetros para um subprograma pode ser somente por valor.
	 
	A função retorna um valor ao programa.
	Respondido em 10/04/2023 14:56:49
	
	Explicação:
Resposta correta: A função retorna um valor ao programa.
	
		5a
          Questão
	Acerto: 1,0  / 1,0
	
	O acesso ao elemento de uma estrutura de dados tipo pilha se restringe ao mais recente na pilha. Já o acesso a um elemento de uma estrutura tipo fila ocorre ao dado há mais tempo na fila. Sobre pilhas e filas, avalie as assertivas a seguir:
I - Uma forma de evitar o desperdício de memória numa fila em alocação sequencial é utilizar-se lista circular.
II - Em uma pilha em alocação encadeada, a complexidade da remoção é O(n).
III - Pilhas têm a propriedade de inverter a ordem de cadeias, enquanto as filas mantêm a ordem.
 A opção que contém todas as assertivas corretas é:
		
	
	I e II. 
	
	II. 
	
	II e III. 
	 
	I e III. 
	
	I. 
	Respondido em 10/04/2023 15:03:23
	
	Explicação:
A resposta correta é: I e III.
	
		6a
          Questão
	Acerto: 0,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):
		
	 
	pilha - fila
	
	lista - vetor
	
	matriz - vetor
	 
	fila - pilha
	
	vetor - lista
	Respondido em 10/04/2023 15:07:40
	
	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 buble sort sempre irá executar mais rápido que o merge sort por ter complexidade computacional inferior ao merge sort. 
	
	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). 
	
	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). 
	
	Ambos têm complexidade comparável, assim, existem não é possível afirmar qual irá executar em melhor tempo. 
	Respondido em 10/04/2023 15:12:41
	
	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 algoritmo executa sempre no mesmo tempo para instâncias de mesmo tamanho n. 
	
	A complexidade computacional deste algoritmo é O (n log n). 
	 
	O tempo de execução pode ser linear em relação ao tamanho da entrada se a instância apresentada já estiver ordenada. 
	
	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 10/04/2023 15:16:37
	
	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á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 afirmativas são falsas.
	
	A primeira afirmativa é falsa e a segunda afirmativa é verdadeira.
	
	As duas afirmativas estão corretas e a segunda não justifica a primeira.
	
	A primeira afirmativa é verdadeira e a segunda afirmativa é falsa.
	 
	As duas afirmativas estão corretas e a segunda justifica a primeira.
	Respondido em 10/04/2023 15:21: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:
		
	
	A complexidade da inserção é sempre O(n), independentemente da altura da árvore.
	 
	Todas as chaves são inseridas em folhas, a posição da folha é determinada pela busca.
	
	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.
	
	O algoritmo de inserção em árvores binárias de busca é estático, isto é, é necessário recalcular toda árvore para inserir uma nova chave.
	
	Toda nova chave é inserida obrigatoriamente na raiz.
	Respondido em 10/04/2023 15:22:53
	
	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