Informática, perguntado por maatheussilvab01, 5 meses atrás

Analise o algoritmo descrito a seguir e assinale a alternativa que descreve CORRETAMENTE sua operação.

Algoritmo1(L,k)

1 - p←L

2 - q←L.ponteiro

3 - enquanto q≠Null e q.valor≠k faça

4 - p←q

5 - q←q.ponteiro

6 - se q≠Null

7 - p.ponteiro←q.ponteiro

a.
O algoritmo 1 remove um elemento em uma lista ligada.


b.
O algoritmo 1 remove um elemento em uma lista duplamente ligada.


c.
O algoritmo 1 insere um elemento em uma lista duplamente ligada.


d.
O algoritmo 1 insere um elemento em uma lista ligada.

e.
O algoritmo 1 move um elemento em uma lista ligada.


hackertrava16: vc conseguiu acerta essa

Soluções para a tarefa

Respondido por dalilaewevanny
1

Resposta:

O algoritmo 1 remove um elemento em uma lista ligada.

Explicação:
Passos do Algoritmo1(L,k) que é RemoverLigada( ). Os parâmetros de entrada são o endereço da lista ligada (L) e o valor que se quer remover(k). Endereço do primeiro elemento na lista copiado em variável p (linha 1) e o endereço do segundo elemento (descrito pelo membro L.ponteiro) é copiado para a variável q (linha 2). Assim temos endereços de memória do elemento atual e de seu sucessor. O laço na linha 3 verifica se o ponteiro (q) excedeu o limite do último elemento da lista e se o valor armazenado no respectivo membro apontado por q é o elemento buscado. Se ambas as verificações não se confirmarem os ponteiros avançam para as próximas posições na lista (linhas 4 e 5). Existem duas formas de se encerrar o laço, q = Null, valor procurado não encontrado (nenhuma remoção é realizada); ou caso q.valor = k, indicando que o elemento buscado foi encontrado, quando há a remoção do elemento por meio da atribuição do endereço do próximo elemento ao membro correspondente no elemento anterior (linha 7).

Perguntas interessantes