当前位置: 首页>>代码示例>>Python>>正文


Python Nodo.Nodo类代码示例

本文整理汇总了Python中Nodo.Nodo的典型用法代码示例。如果您正苦于以下问题:Python Nodo类的具体用法?Python Nodo怎么用?Python Nodo使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Nodo类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: buscar_solucion_bfs

def buscar_solucion_bfs(conexiones, estado_inicial, solucion):
    solucionado = False
    nodos_visitados = []
    nodos_frontera = []
    nodoInicial = Nodo(estado_inicial)
    nodos_frontera.append(nodoInicial)
    while (not solucionado) and (len(nodos_frontera) != 0):
        nodo = nodos_frontera[0]
        #   extraer nodo y anadirlo a visitados
        nodos_visitados.append(nodos_frontera.pop(0))
        if (nodo.get_datos() == solucion):
            #   solucion encontrada
            solucionado = True
            return nodo
        else:
            #   expandir nodos hijos (ciudades con conexion)
            dato_nodo = nodo.get_datos()
            lista_hijos = []
            for un_hijo in conexiones[dato_nodo]:
                hijo = Nodo(un_hijo)
                lista_hijos.append(hijo)
                if (not hijo.en_lista(nodos_visitados)) and (not hijo.en_lista(nodos_frontera)):
                    nodos_frontera.append(hijo)
                
            nodo.set_hijos(lista_hijos)
开发者ID:KiiraGit,项目名称:Python,代码行数:25,代码来源:vuelos_bfs.py

示例2: __init__

 def __init__(self,elem,aristas):
     Nodo.__init__(self,elem)
     self.aristas = aristas
     if aristas == {}:            
         self.grado = 0
     else:
         self.grado = len(aristas)
开发者ID:ricardorodab,项目名称:Lenguajes,代码行数:7,代码来源:Vertex.py

示例3: visitAtomString

 def visitAtomString(self, ctx):
     nodo = Nodo()
     nodo.valor = str(ctx.STRING())
     nodo.valor = nodo.valor[1:len(nodo.valor)-1]
     nodo.tipo = "STRING"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:7,代码来源:GramaticaExtVisitor.py

示例4: visitNumberInteger

 def visitNumberInteger(self, ctx):
     valor = int(ctx.integer().getText())
     nodo = Nodo()
     nodo.valor = valor
     nodo.tipo = "INTEGER"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:7,代码来源:GramaticaExtVisitor.py

示例5: visitNumberFloat

 def visitNumberFloat(self, ctx):
     valor = float(ctx.FLOAT_NUMBER().getText())
     nodo = Nodo()
     nodo.valor = valor
     nodo.tipo = "FLOAT"
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:7,代码来源:GramaticaExtVisitor.py

示例6: insertarPrimero

 def insertarPrimero(self, datosAInsertar):
     nodo = Nodo()
     nodo.datos = datosAInsertar
     if self.esVacia():
         nodo.siguiente = None
     else:
         nodo.siguiente = self.lista
     self.lista = nodo
开发者ID:Josue87,项目名称:Estructuras-De-Datos,代码行数:8,代码来源:Lista.py

示例7: visitIterable_tuple

 def visitIterable_tuple(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.test(1))
     nodo = Nodo()
     nodo.tipo = "ITERATOR"
     nodo.subtipo = "TUPLE"
     nodo.valor = (valorI,valorD)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:8,代码来源:GramaticaExtVisitor.py

示例8: visitAtomName

 def visitAtomName(self, ctx):
     nodo = Nodo()
     valor = self.evaluarSimbolo(ctx.NAME())
     nodo.tipo = valor.tipo
     nodo.valor = valor.valor
     nodo.subtipo = valor.subtipo
     #self.pilaValores.append(nodo)
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:8,代码来源:GramaticaExtVisitor.py

示例9: configurarNodo

    def configurarNodo(self, espacoEstado, nodoAnalisado):
        profundidade = nodoAnalisado.profundidade + 1
        nodoPai = nodoAnalisado

        novoNodo = Nodo(espacoEstado, 0, profundidade, nodoPai)

        if self.isNodoJaVisitado(novoNodo) is False:
            novoNodo.pesoHeuristica = self.computarHeuristicas(novoNodo.estadoTabuleiro)
            self.fronteiras.append(novoNodo)
开发者ID:rodolfolottin,项目名称:INE5633,代码行数:9,代码来源:EightPuzzleSolver.py

示例10: visitTestNot

 def visitTestNot(self, ctx):
     valor = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     nodo = Nodo()
     if valor.tipo == "BOOL":
         nodo.tipo = "BOOL"
         nodo.valor = not valor.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion not-test")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:10,代码来源:GramaticaExtVisitor.py

示例11: visitTestExprComp

 def visitTestExprComp(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.expr(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.expr(1))
     nodo = Nodo()
     nodo.tipo = "BOOL"
     op = ctx.comp_op().getText()
     if valorI.tipo == "ITERATOR" or valorD.tipo == "ITERATOR":
         ln = -1
         self.raiseError(ln, "No es posible realizar este tipo de operacion con elementos iterables", "primitive-expected")
     if op == "<":
         nodo.valor = valorI.valor < valorD.valor
     elif op == ">":
         nodo.valor = valorI.valor > valorD.valor
     elif op == "==":
         nodo.valor = valorI.valor == valorD.valor
     elif op == ">=":
         nodo.valor = valorI.valor >= valorD.valor
     elif op == "<=":
         nodo.valor = valorI.valor <= valorD.valor
     elif op == "<>":
         nodo.valor = valorI.valor <> valorD.valor
     elif op == "!=":
         print(valorI)
         print(valorD)
         nodo.valor = valorI.valor != valorD.valor
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:26,代码来源:GramaticaExtVisitor.py

示例12: exitComparisonEval

    def exitComparisonEval(self, ctx):
        valorI = self.pilaValores.pop()
        valorD = self.pilaValores.pop()
        nodo = Nodo()

        op = ctx.comp_op().getText()

        if op == "<":
            nodo.valor = valorI.valor < valorD.valor
        elif op == ">":
            nodo.valor = valorI.valor > valorD.valor
        elif op == "==":
            nodo.valor = valorI.valor == valorD.valor
        elif op == ">=":
            nodo.valor = valorI.valor >= valorD.valor
        elif op == "<=":
            nodo.valor = valorI.valor <= valorD.valor
        elif op == "<>":
            nodo.valor = valorI.valor <> valorD.valor
        elif op == "!=":
            nodo.valor = valorI.valor != valorD.valor

        nodo.tipoValor = "BOOL"
        self.pilaValores.append(nodo)
        print("Nueva compracion: " + str(nodo.valor))
开发者ID:unzero,项目名称:Final,代码行数:25,代码来源:GramaticaExtListener.py

示例13: insertarUltimo

 def insertarUltimo(self, datosAInsertar):
     nodo = Nodo()
     nodo.datos = datosAInsertar
     nodo.siguiente = None
     if self.esVacia():
         self.lista = nodo
     else:
         copiaLista = self.lista
         while copiaLista.siguiente != None:
             copiaLista = copiaLista.siguiente
         copiaLista.siguiente = nodo
开发者ID:Josue87,项目名称:Estructuras-De-Datos,代码行数:11,代码来源:Lista.py

示例14: visitTestOr

 def visitTestOr(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.test(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.test(1))
     nodo = Nodo()
     if valorI.tipo == "BOOL" and valorD.tipo == "BOOL":
         nodo.tipo = "BOOL"
         nodo.valor = valorI.valor or valorD.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion or-test")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:11,代码来源:GramaticaExtVisitor.py

示例15: visitExprXor

 def visitExprXor(self, ctx):
     valorI = super(GramaticaExtVisitor,self).visit(ctx.expr(0))
     valorD = super(GramaticaExtVisitor,self).visit(ctx.expr(1))
     nodo = Nodo()
     if valorI.tipo == "INTEGER" or valorD.tipo == "INTEGER":
         nodo.tipo = "INTEGER"     
         nodo.valor = valorI.valor ^ valorD.valor
     else:
         ln = -1
         self.raiseError(ln, 'Error en los operandos', "Operacion bit-xor")
     return nodo
开发者ID:unzero,项目名称:Final,代码行数:11,代码来源:GramaticaExtVisitor.py


注:本文中的Nodo.Nodo类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。