Pular para o conteúdo

Lista Encadeada em Python

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
Fagner Amaral de Souza Candido f_Candido
Hits: 22.115 Categoria: Python Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

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
Download listaEncadeada.py Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Esconder código-fonte

#!/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
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Calculando IMC Python

Programa para calcular a média e a nota trimestral

Script para comunicação OBD2

Controle de Depósito com SQLite + Python

Inteligência artificial com Python e Shell Script

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.