Lista Encadeada em Python
Publicado por Fagner Amaral de Souza Candido 15/01/2009
[ Hits: 21.613 ]
Homepage: https://github.com/fagnercandido
Olá a todos,
Recentemente li aqui no VOL, um artigo sobre listas. Isso me motivou a desenvolver algoritmos não somente de listas, mas também de pilhas, filas e etc...
A implementação que fiz aqui de lista é bem simples: cria-se um nó raiz, e por conseguinte vai acrescentado.
vale lembrar que, o Python já implementa nativamente o tipo lista, e ordenado, que por sua vez é bem superior ao mostrado. A intenção é mostrar uma maneira diferente de implementação.
Abraços
#!/usr/bin/python # -*- coding: utf-8 -*- # Sintese # Objetivo : Implementar uma lista encadeada simples # Entrada : Um valor qualquer # Saida: ... # Autor: Fagner Candido - f_Candido # Contato: fagner7777777@gmail.com class ListaEncadeada: # Declaracao dos atributos desta Classe valorOrbital = None proximo = None # Fim declaracao # Nesta secao encontram-se os metodos para acesso # dos respectivos atributos def getValorOrbital(self): return(self.valorOrbital) def getProximo(self): return(self.proximo) def setValorOrbital(self, valorOrbital): self.valorOrbital = valorOrbital def setProximo(self, proximo): self.proximo = proximo # Fim declaracao Metodos Get e Set # Metodo para Insercao def insereInicio(self, raiz, valorOrbital): temporario = ListaEncadeada() # o atributo proximo aponta para o atributo # proximo da raiz temporario.setProximo(raiz.getProximo()) temporario.setValorOrbital(valorOrbital) # o atributo proximo da raiz, aponta para temporario raiz.setProximo(temporario) # Fim insercao # Metodo para percorrer lista def percorreListaEncadeada(self, raiz): temporario = ListaEncadeada() temporario = raiz.getProximo() while(temporario != None): print temporario.getValorOrbital() # incremento do temporario temporario = temporario.getProximo() # Fim percorrimento # Metodo para remocao def removeInicio(self, raiz): temporario = ListaEncadeada() temporario = raiz.getProximo() print temporario.getValorOrbital() raiz.setProximo(temporario.getProximo()) temporario = None # Fim remocao
Implementação simples de um programa antivírus em Python 3.10 para Linux
Problema das Oito Rainhas (Random)
PYCalculator 1.0 - Calculadora no Python
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta