Lista Encadeada em Python
Publicado por Fagner Amaral de Souza Candido 15/01/2009
[ Hits: 21.618 ]
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
Resolução de problemas por meio de buscas - Labirinto (Inteligência Artificial)
Como rodar músicas mp3 pelo Python
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
UUID da partição efi mudou, multiboot já era...e agora? (0)