28.02.2023 Views

Logica_de_Programacao_3_Edicao_Livro

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

162 1 Lógíco de progromoção

b) No início da lista: remover Est.acio11ame11to

~-co_m_e_ç_o_~--'•~I estacionamento(3) 1-----'•~ _ b_a_n c_a_(_7_) ~ Antes

._I

começo

estacionamento(5)

t

1-------,•~ _ b_a_n c_a_(_7_) _,

._I

12 passo

lQ passo: começo f- lista [3]. prox;

c) No fim da lista: re1nover Locadora

1 ivraria(2) 1---•-I locadora(4) 1-------,•~l ...__ fi_n_a_l _ __, Antes

1 ivraria(2)

t

~1 _oc_a_d_or_a_(_4_) ~--'>J~ ._ __ fi_n_a_l _ __,

12 passo

Jil passo: lista[2] .prox f- lista[4] . prox ;

Podemos generalizar todos os casos de remoção e1n un1 ú nico módulo:

ALGORITMO 7.3

Remoção em uma lista (parcial)

1. módulo Remove (inteiro: velho, antecessor)

2. antecessor f- lista[velho].prox;

3. fi1m1ódulo;

Exemplo

Remove (5, lista[7].prox);

Remove (3, começo);

Remove (4, lista[2].prox);

li meio da lista, ex a)

li início da lista, ex b)

11 fim da lista, ex e)

Examinando com atenção, poderen10s enxergar a beleza ela simplicidade do código, que

inclusive simplifica a compreensão do que realmente ocorre: o elemento anterior liga-se ao

próximo elemento de seu próximo elemento.

Pode rernos aperfeiçoar o rnócluJo acrescentando algun1as consistê ncias, conforrne mostrado

a seguir:

ALGORITMO 7.4

Remoção em uma lista (completa)

1. módulo Remove (inteiro: velho, antecessor)

2. se começo= O li Lista vazia

3. então escreva (''A lista estã vazia !'') ;

4. senão se não Existe (antecessor) (Couli,uu1)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!