Ir ao conteúdo
  • Cadastre-se

Python Remover um nó de uma lista encadeada em Python


Posts recomendados

Estou aprendendo Python e gostaria de ajuda para saber como posso remover um nó de uma lista encadeada a partir de um valor, atualmente meu código está assim:

 

noRaiz = None

def novoNo(valor):
    return {
    "valor": valor,
    "proximo": None
    }

def remove(valor):
    global noRaiz
    if noRaiz is None:
        return
    noAtual = noRaiz
    if noRaiz["valor"] == valor:
        noRaiz = noRaiz["proximo"]
        return
    while noAtual["proximo"] is not None:
        if noAtual["proximo"]["valor"] == valor:
            noAtual["proximo"] = noAtual["proximo"]["proximo"]
        noAtual = noAtual["proximo"]

def imprimir():
    noAtual = noRaiz
    while noAtual is not None:
        print(noAtual["valor"])
        noAtual = noAtual["proximo"]

noRaiz = novoNo(54)
no2 = novoNo(26)
no3 = novoNo(93)
no4 = novoNo(17)
no5 = novoNo(77)
no6 = novoNo(31)

noRaiz["proximo"] = no2
no2["proximo"] = no3
no3["proximo"] = no4
no4["proximo"] = no5
no5["proximo"] = no6
no6["proximo"] = None

imprimir()
remove()

Como faço para remover o número 54 ou o 17 ? Fiz a função remove mas provavelmente não está certo porque não remove.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...