Buscar

Prova Estrutura de Dados em C - Nota 9 (sem 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 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

1a Questão (Ref.: 202013009972)
A estrutura abaixo representa a célula de uma árvore em linguagem C: 
typedef struct _no { 
int chave; 
struct no *esq, *dir; 
} no; 
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); 
} 
} 
ABDCEYX 
YXEABBC 
CBDAXEY 
AEXYBCD
ABCDEXY 
 2a Questão (Ref.: 202013009968)
Considere o código fonte abaixo, escrito em linguagem C, e analise as afirmativas abaixo. 
#include 
#include 
struct entrada_cadastro { 
char name[50]; 
int idade; 
} 
int main() { 
struct entrada_cadastro *ptr; 
ptr = malloc(sizeof(ptr)); 
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990831\n\nStatus da quest%C3%A3o: Liberada para Uso.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990827\n\nStatus da quest%C3%A3o: Anulada.');
if(ptr == NULL) { 
printf("Falha na alocação de memória!\n"); 
return(1); 
} 
memset(ptr, 0x0, sezeof(*ptr)); 
strcpy(ptr->name, "Aluno"); 
ptr->idade=20; 
return(0); 
} 
Marque (V) para verdadeiro ou (F) para falso. 
( ) A alocação de memória, presente na função main, efetuada com a função malloc, resulta
na mesma quantidade alocada em bytes que ptr = malloc(sizeof(struct entrada_cadastro)). 
( ) A função strcpy copia a palavra Aluno para o vetor name da struct entrada_cadastro. 
( ) O acesso aos campos da estrutura de dados é realizado através do ponteiro
nomeado ptr de tipo struct entrada_cadastro. 
A sequência correta é: 
V, F, F.
V, V, V. 
V, V, F.
F, F, V.
F, V, V. 
 3a Questão (Ref.: 202013012315)
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.1
Valor total: 9.142
Valor total: 9.14
Valor total: 9.141517e+00
Valor total: 9.141517
 4a Questão (Ref.: 202013012354)
Analise o seguinte código implementado na linguagem C:
int soma(int *a, int *b) {
 *a = *a + *b;
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993174\n\nStatus da quest%C3%A3o: Liberada para Uso.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3993213\n\nStatus da quest%C3%A3o: Liberada para Uso.');
 return *a;
}
int main() {
 int x=5, y=3;
 y = soma(&x, &y);
 printf(¿%d¿, x+y);
 return(0);
}
Qual será o valor exibido na saída padrão do sistema?
13
8
24
11
16
 5a Questão (Ref.: 202013010007)
 Se E (x) é uma função que enfileira "x" pela direita da fila F e D () é uma função
que desenfileira, 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(), E(R), E(A), E(O). 
D (), D(), D(), E(A), E(R), E(O). 
D (), D(), D(), D(), E(O), E(A), E(R). 
D (), D(), D(), D(), E(R), E(A), E(O). 
E(A), E(R), D (), D(), D(). 
 6a Questão (Ref.: 202013010008)
Sobre pilhas e filas, avalie as assertivas a seguir: 
I) Uma forma de se 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. 
II. 
I e II. 
I e III. 
II e III. 
 7a Questão (Ref.: 202013009975)
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990866\n\nStatus da quest%C3%A3o: Liberada para Uso.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990867\n\nStatus da quest%C3%A3o: Anulada.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990834\n\nStatus da quest%C3%A3o: Liberada para Uso.');
Algoritmos de ordenação baseados em comparação entre elementos da sequência tem
complexidade computacional mínima de: 
O(log n) 
O(n\(^3\))
O(n) 
O(n log n) 
O(n\(^2\)) 
 8a Questão (Ref.: 202013009979)
O método de ordenação por seleção tem duas versões, uma estável e outra instável. Em
relação ao tempo de execução do algoritmo quando é apresentado em sua entrada uma
sequência quase ordenada e sua complexidade computacional, é correto afirmar que: 
É provável que a versão estável execute em tempo inferior a versão instável, porém a
complexidade computacional de ambos é O(n log n). 
É provável que a versão estável execute em tempo inferior a versão instável, porém a
complexidade computacional de ambos é O(n\(^2\)). 
É provável que a versão instável execute em tempo inferior a versão estável, porém a
complexidade computacional de ambos é O(n\(^2\)). 
É provável que a versão estável execute em tempo inferior a versão instável, porém a
complexidade computacional de ambos é O(n log n). 
Tanto a versão estável quanto a instável executarão no mesmo tempo, isto se deve ao fato
de que o desempenho para uma instância depende somente da complexidade
computacional, que é igual para ambas versões. 
 9a Questão (Ref.: 202013011901)
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.
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.
Transformando essa árvore em uma nova árvore de ordem 2, as folhas teriam de estar no nível 2.
Se a árvore em tela for balanceada, depois da inserção de um nó 9, o nó 12 assume a raiz da árvore.
 10a Questão (Ref.: 202013011905)
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3990838\n\nStatus da quest%C3%A3o: Liberada para Uso.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3992760\n\nStatus da quest%C3%A3o: Liberada para Uso.');
javascript:alert('C%C3%B3digo da quest%C3%A3o: 3992764\n\nStatus da quest%C3%A3o: Liberada para Uso.');
Ano: 2015 Banca: NUCEPE Órgão: SEFAZ - PI Prova: Analista - Sistemas Pleno
Árvore AVL é uma árvore de busca autobalanceada. Isso significa que:
As alturas das duas subárvores a partir de cada nó são exatamente iguais.
Cada nó da árvore possui até três descendentes.
As alturas das duas subárvores a partir de cada nó diferem no máximo em duas unidades.
As alturas das duas subárvores a partir de cada nó diferem no máximo em uma unidade.
Pode possuir até duas raízes.