estrutura de dados Flashcards

1
Q

Quais são os tipos de algoritmos de ordenação?

A

inserção, seleção, mergesort, heapsort e quicksort

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Fibonacci iterativo ou recursivo?

A

Iterativo é a melhor opção, uma vez que não repete coisas já calculadas como acontece no recursivo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é recursão em um algoritmo?

A

É quando uma função chama a si mesma, exemplo: fatorial

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

1 ) - Qual o problema na busca em um vetor em C
2 ) - Qual o pior caso?

A

Quando o vetor é vazio e n = 0, pois não há solução

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

1 ) - Qual o problema na inserção em um vetor em C
2 ) - Qual o pior caso?

A

Mover os elementos para a direita, pior caso: inserir no começo na Array, pois moverá todos os elementos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

1 ) - Qual o problema na remoção em um vetor em C
2 ) - Qual o pior caso?

A

Mover os elementos para a esquerda, pior caso: inserir no começo na Array, pois moverá todos os elementos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

se P = &E

A

Então P aponta para E

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

se P é um ponteiro então *P é ?

A

valor do objeto apontado por P

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Quais os problemas o ponteiro resolve?

A

Auxiliam no problema de inserção e remoção

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é um ponteiro?

A

Um tipo de variável capaz de armazenar endereços

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

É possível alterar o valor de uma variável não global?

A

Não, somente com ponteiros ou a variável ser global, exemplo: função

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Para que serve passagem por referência

A

Serve para modificar o valor fora da função

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Desvantagem de lista sem cabeça (lista encadeada, struct)

A

Precisar verificar se a lista é vazia e atualizá-la

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Vantagem lista com cabeça (lista encadeada, struct) e locação dinâmica

A

Não precisa verificar se a lista é vazia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Por que inserir os dados (10,5,3) e não (3,5,10) ?

A

Para inserir no começo e não precisar percorrer toda a lista

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Por que utilizar vetores em C ?

A

A principal vantagem é o armazenamento contíguo na memória, permitindo o acesso sequencial aos elementos = desempenho leitura e escrita

15
Q

O que são filas

A

FIFO, processamento de dados na ordem que foi inserido

16
Q

O que são pilhas

A

LIFO, gerenciar dados de uma maneira específica, exemplo algoritmo: decimal para binário

17
Q

Busca binária o que é e para que serve?

A

Busca binária é um algoritmo que serve para encontrar elementos especificas em um conjunto ordenado

18
Q

Como funciona a busca binária?

A

Com o Log(n,2)

19
Q

Como foi criado a busca binária, qual a ideia por trás?

A

Com a ideia de dividir pela metade para encontrar mais rápido o elemento, a busca binária faz o raciocínio inverso, elevando ao expoente 2 a posição do próprio elemento, vide exemplo no caderno.

20
Q

Algoritmos de ordenação, o que são e para que servem?

A

São algoritmos que buscam ordenar os elementos de um vetor e servem para decompo-los em ordem crescente

21
Q

Quais são os algoritmos ruins de ordenação e por quê?

A

Inserção e seleção, porque não utilizam da ideia da busca binária, o que acaba por deixar o algoritmo mais lento.

22
Q

Quais são os algoritmos bons de ordenação e por quê?

A

Mergesort, Heapsort e Quicksort. Porque todos utilizam da ideia de busca binária para ordenar os elementos de um vetor.

23
Q

Como funciona o mergesort ? qual o pior caso?

A

Dividindo a vetor ao meio em pedaços cada vez menores, pior caso: log(2,n) * n passos

24
Q

Como funciona o heapsort ? qual o pior caso ?

A

Busca a partir dos índices dos vetores, 2k e 2k+1.

25
Q

Como funciona o quicksort? qual o pior caso?

A

Escolhe o pivô, geralmente o primeiro número n[0] e divide em maiores e menores do que ele. pior caso: n ** 2 e médio log(n,2)

26
Q

Como funciona o algoritmo de inserção ? qual o pior caso?

A

Ele compara a posição atual e compara à esquerda, entra no vetor empurrando os outros

27
Q

Como funciona o algoritmo de seleção ? por que é ruim e qual o pior caso?

A

Ele compara a posição atual com o restante do vetor e troca de lugar com o menor número, ele é ruim porque toda vez deve percorrer o vetor inteiro, o pior caso e caso médio é n ** 2.