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

1. Referente a alocação dinâmica de memória em C, é CORRETO afirmar:
A função free é geralmente usada com o operador sizeof.
As funções calloc e realloc são usadas para liberar arrays.
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.
2. Na linguagem C, é possível realizar alocações de memória utilizando
alocação dinâmica ou estática. Assinale a alternativa que representa uma
alocação dinâmica de um vetor do tipo primitivo double com 10 posições na
linguagem C.
double[10 * sizeof(double) + 1)
double[10 * sizeof(double) - 1)
malloc(10 * sizeof(double) + 1)
double[10]
malloc(10 * sizeof(double))
3. 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:
I, apenas.
II, apenas.
II e III, apenas.
I e III, apenas.
I e II, apenas.
4. 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:
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.
O procedimento sempre retorna um valor ao programa.
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.
5. Sobre listas duplamente encadeadas, afirma-se:
I) Cada nó usa o dobro do número de campos ponteiro de uma lista
simplesmente encadeada.
II) A complexidade de remoção é metade da complexidade de remoção em
lista simplesmente encadeada.
III) Não permitem a inserção de nó no meio da lista.
É correto apenas:
II e III.
III.
I e III.
I.
II.
6. 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 encadeada, Lista em alocação sequencial e
deque.
Lista em alocação sequencial, Lista em alocação encadeada e
deque.
Lista em alocação encadeada, Lista circular e Lista em alocação
sequencial.
Lista em alocação sequencial, Lista circular e Lista em alocação
encadeada.
7. Comparando o Merge Sort com o Método da bolha podemos afirmar que:
Ambos têm complexidade comparável, assim, existem não é
possível afirmar qual irá executar em melhor tempo.
O merge sort, por ser instável, sempre executará em tempo
superior ao buble 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(n²).
O buble sort sempre irá executar mais rápido que o merge sort por
ter complexidade computacional inferior ao merge 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).
8. 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.
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 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.
A complexidade computacional deste algoritmo é O (n log n).
9. Escola de Formação Complementar do Exército - EsFCEx Prova: CFO - Informática - 2019
Árvores binárias podem ser usadas para representar expressões aritméticas. Como um
exemplo de expressão, podemos ter: a * b + f sen - h * j com os elementos enumerados
"Em-ordem". Nesse caso, a árvore binária terá como raiz:
O átomo a
O átomo j
O átomo sen
O átomo +
O átomo *
10. Ano: 2012 Banca: IDECAN Órgão: BANESTES Prova: Analista de Tecnologia da
Informação ¿ Desenvolvimento de Sitemas
Árvore de pesquisa é uma estrutura de dados eficiente para armazenar informação, sendo
particularmente adequada quando existe a necessidade de considerar todos ou alguma
combinação de registros. Assinale uma combinação correta desses registros.
Acesso direto e sequencial eficientes, facilidade de inserção e retirada de registro,
boa taxa de utilização de memória, utilização de memória primária e secundária.
Utilização de estruturas de dados como lista, pilha e fila.
Utilização de algoritmos de ordenação eficientes.
Não é necessário indexar os registros.
As operações de inserir, retirar e pesquisar são definidas.

Outros materiais