Estrutura de dados
1. Sobre técnicas de ordenação, dado a seguinte sequencia S:
S = {“maça”, “banana”, “pera”, “goiaba”, “mamão”, “açaí”}
Realize, passo-a-passo e por escrito, a ordenação para cada um dos métodos abaixo:
a) BubbleSort;
b) SelectionSort;
c) InsertionSort;
Conte o número de comparações realizadas por cada ordenação e escreva-a ao final.
2. Responda:
a) O que é um ponteiro ?
É uma variável que contem um valor e um endereço.
b) como se declara um ponteiro ?
<tipo>*<nome>
c) o que são os operadores “*” e “&” para ponteiros?
*-Devolve o valor a seu operando
&-Devolve o endereço a seu operando.
d) quando usar cada um desses operadores ?
*- quando eu preciso que a variável receba um valor.
&- quando eu preciso que a variável seja alocada em um endereço.
e) Cite um exemplo envolvendo a declaração e o uso dos operadores de ponteiros.
3. Sobre listas, descreva com suas palavras quais as formas de implementação, 2 vantagens edesvantagens de cada uma das formas.
4. Em uma lista encadeada é formada pela ligação de vários elementos chamados nó. O que é um elemento nó, qual sua estrutura, e como deve ser usado em uma lista encadeada?
5. Sobre listas sequenciais, faça passo-a-passo e por escrito, as seguintes operações:
a) crie uma lista sequencial de tamanho 4
b) inserir o item de valor “xyz” na lista;
c) inserir o item “kab” na 1ª posição da lista;
d) inserir o item “jgr” na 1ª posição da lista;
e) remover o 1º item da lista;
f) inserir o item “opq” na última posição da lista;
g) inserir o item “vwh” na 3ª posição da lista;
h) inserir o item “tmq” na última posição da lista;
i) consultar o 2º item da lista;
j) listar os elementos da lista;
6. Stack pilha; push(&pilha, 3); push(&pilha, 4); pop(&pilha); push(&pilha, 5); push(&pilha, 6); pop(&pilha); push(&pilha, 7); push(&pilha, 8); while (true) {