コード例 #1
0
def main():
    filaTeste = Fila()
    filaTeste.inserirdados("ifpb")
    filaTeste.inserirdados("teste")
    filaTeste.inserirdados("valor final")
    print(filaTeste.getFila())
    filaTeste.removerDado()
    print(filaTeste.getFila())
    filaTeste.removev("teste")
    #remove o teste
    print(filaTeste.remove())
    #sai o primeiro valor
    print(filaTeste.TamanhoFila())
コード例 #2
0
def main():
    vagas = Fila()

    print('Comandos\n', 'A - adicionar carro\n', 'R - remover carro\n',
          'S - mostrar statatus do estacionamento\n',
          'E - Encerrar o programa')

    print()

    comando = input('Insira o comando desejado: ').upper()

    while comando != 'E':

        if comando == 'A':
            placa = input('Informe o numero da placa: ')
            vagas.inserirDado(placa)
            comando = input('Insira o comando desejado: ').upper()

        elif comando == 'R':
            placa = input('Informe a placa do carro que quer remover: ')
            vagas.remove(placa)

            comando = input('Insira o comando desejado: ').upper()

        elif comando == 'S':
            print(vagas.getFila())
            comando = input('Insira o comando desejado: ').upper()
コード例 #3
0
ファイル: bfs.py プロジェクト: Madureiradaniel/grafosBfs
    def __init__(self, grafo, vertice):

        fila = Fila()

        #lista para guardar os vertices por distancia
        auxDist = []
        for i in range(len(grafo)):
            auxDist.append([])

        cont = 1
        self.__vetor_distancias = ([0] * len(grafo))
        self.__vetor_visitacao = ([-1] * len(grafo))

        fila.QEUEput(vertice)
        fila.QEUEput(-1)  # separa a fila por camada

        self.__vetor_visitacao[vertice] = cont

        cont += 1
        distancia = 0

        while fila.QEUEempty() != 0:
            v = fila.QEUEget()

            #se o v for igual a -1 significa que e o fim da fila
            if v != -1:
                camada = fila.QEUEget()

                #aumenta a distancia caso a camada = -1,
                aux = distancia
                if camada == -1:
                    distancia += 1
                else:
                    #se a camada nao for igual a -1, ela e inserida novamente no inicio da fila,
                    # pois se trata de um vertice
                    fila.addInicioDaFila(camada)

                #preenche o vetor de visitaçao
                for i in grafo[v]:
                    if self.__vetor_visitacao[i] == -1:
                        self.__vetor_visitacao[i] = cont
                        cont = cont + 1
                        fila.QEUEput(i)

                #verifico se minha distancia mudou
                #caso a distancia tenha mudado, insiro meus vertices pertencentes a distancia
                if aux != distancia:
                    auxDist[distancia] = (fila.getFila())
                    fila.QEUEput(
                        -1
                    )  # insiro no fim da fila para identificar que e outra camada

        #mantem na lista de distancia apenas, as listas nao nulas
        auxDist2 = []
        for i in auxDist:
            if len(i) != 0:
                auxDist2.append(i)

        #soma a quantidade de cidades por cada distancia
        cont = 0
        for i in auxDist2:
            soma = 0
            for j in i:
                soma += 1
            self.__vetor_distancias[cont] = soma
            cont += 1

        fila.QEUEfree()
コード例 #4
0
from fila import Fila

fila1 = Fila()
fila1.inserirDado(0)
fila1.inserirDado(1)
fila1.inserirDado(2)
print(fila1.getFila())

fila1.remover()
print(fila1.getFila())
fila1.removerDado(2)

tam = fila1.tamanhoFila()
if (tam != 0):
    print(fila1.getFila())
else:
    print("Lista Vazia")