===== iteration ===== Wird von [[ss15:projekte_im_sommersemester_15:dokumentation:main|main]] aufgerufen. Returned eine Liste von [[ss15:projekte_im_sommersemester_15:dokumentation:knoten|Knoten]]. # -*- coding: utf-8 -*- from __future__ import division from getVorschlag import getVorschlag from pruefen import pruefen from config import GOTT, Variablen GOTT = GOTT() variablen = Variablen() def iteration(front): '''Wird in einer Schleife aufgerufen''' neufront=[] for knoten in front: for vorschlag in getVorschlag(knoten): neufront=pruefen(vorschlag,knoten,neufront) #Erhöht Indizes von allen Elementen in der Warteliste um 1 GOTT.warteliste=[[x[0],x[1]+1] for x in GOTT.warteliste] while len(GOTT.warteliste)>0 and GOTT.warteliste[0][1]>=variablen.nebenstrassenverzoegerung: neufront.append(GOTT.warteliste.pop(0)[0]) return neufront In iteration wird für jeden Knoten in der "front"-Liste [[ss15:projekte_im_sommersemester_15:dokumentation:getvorschlag|getVorschlag]] durchgeführt. Jedes Element dieser Liste wird in [[ss15:projekte_im_sommersemester_15:dokumentation:pruefen|pruefen]] geprüft. Dabei werden manche Elemente in die neufront übernommen. Schließlich wird der Index von allen Elementen in der Warteliste inkrementiert und anschließend werden alle [[ss15:projekte_im_sommersemester_15:dokumentation:knoten|Knoten]], die lange genug in der Warteliste gewartet haben, in die neufront übernommen.