• Matéria: Informática
  • Autor: tomtjs2014
  • Perguntado 3 anos atrás

Tarefa 2 – Leia o fragmento, interprete o código Python em questão e responda as questões abaixo.

1. def remove(self, valor):
2. if self.head.data == valor:
3. self.head = self.head.nextItem
4. else:
5. before = None
6. navegar = self.head
7. while navegar and navegar.data != valor:
8. before = navegar
9. navegar = navegar.nextItem
10. if navegar:
11. before.nextItem = navegar.nextItem
12. else:
13. before.nextItem = None


a) descreva como o método recebe o valor:

b) não sendo o método, como será a busca? Lembre-se do head.

c) quais alterações ocorrerá na lista?


tomtjs2014: RESPOTA
I) O método recebe o valor que será removido e navega por toda a lista em busca do valor. Inicialmente, deve-se verificar se o valor buscado corresponde ao item do cabeçalho (remoção mais simples).

II) Se não for o método deve buscar o anterior e o próximo (baseado no head).

III) O valor correspondente ao próximo item é alterado, não sendo necessário assim alterar toda a lista, e sim apenas os itens anterior e posterior diretamente envolvidos.
tomtjs2014: FONTE : https://brainly.com.br/tarefa/51823223

Respostas

respondido por: luizjeff2011
0

Resposta:

a função remove que recebe o parâmetro chamado valor e recebe o parâmetro durante a chamada de função, e o outro paramento por nome de self que é herdada da classe. Na segunda linha e feito a verificação se o conteúdo da lista recebido no parâmetro self é igual ao da variável valor e caso a condição seja atendida, será executada a terceira linha, a lista  self  recebe o próximo item, se condição na linha anterior não for atendida, o compilador executa a quarta linha, seguindo para a quinta linha e criado uma variável before que recebe um valor vazio, na sexta linha é criado a variável navegar que recebe os itens da lista self. Na sétima linha começa um loop while verificando itens na variável navegar, será executado o  seguinte trecho de código, a variável before recebe os itens da variável navega, nove a variável navegar recebe o próximo item.  linha dez é executado um teste lógico verificando os itens na lista navegar e caso essa condição for atendida o código vai ser executado o próximo tem da variável before vai receber o próximo item da lista navegar, e caso o teste lógico não seja atendido será executado a exceção else próximo item da variável before vai receber o valor vazio.

Explicação:

fonte explicação propia

Perguntas similares