".__CLASS__.":".__FUNCTION__.":".__LINE__.". sciezka:".$sciezka." Jade wezel ".$wezel." ostatni wezel to ".$last_wezel; foreach($this->wezly->$wezel as $link=>$link_) { //echo "
Anal:link:".$link." "; if($link!=$last_wezel) { //ignorujemy cofanie sie if($licznik==0) { //pierwszy link $akt_sciezka=$this->sciezki[$sciezka]; if(!in_array($link, $this->sciezki[$sciezka])) { //echo " dopisuje sciezke(".$link.")"; $this->sciezki[$sciezka][]=$link; end($this->sciezki); //ustawiam arraya na koncu self::trasuj($link,$wezel,$sciezka); } } else { //koljny link if(!in_array($link, $this->sciezki[$sciezka])) { end($this->sciezki); //ustawiam arraya na koncu //echo "
Rozgalezienie na wezle ".$wezel." dla linku ".$link; //print_r($this->sciezki); $aktualny_nr_sciezki=key($this->sciezki); $this->sciezki[]=array(); //tworze nowa sciezke end($this->sciezki); //ustawiam arraya na koncu $nowy_nr_sciezki=key($this->sciezki); //ustalam jaki jest numer nowej sciezki $this->sciezki[$nowy_nr_sciezki]=$akt_sciezka; //kopiuje poprzednia sciezke $this->sciezki[$nowy_nr_sciezki][]=$link; //dopisuje jej link echo "\n//
- Utwozrylem kolejna sciezke nr ".$nowy_nr_sciezki." podczas gdy aktualna zawartosc sceizki(".$aktualny_nr_sciezki.")"; //print_r($this->sciezki[$nowy_nr_sciezki]); echo "//
"; self::trasuj($link,$wezel,$nowy_nr_sciezki); } } $licznik=$licznik+1; } //else echo "(zignorowalem cofanie sie dla ".$link." )"; } } function trasuj_wezly($wezly,$unlayed=null) { $this->wezly=$wezly; // print_r($this->wezly); $this->sciezki=array(); foreach($this->wezly as $wezel=>$links){ if(isset($unlayed)) { if(!in_array($wezel, $unlayed)) continue; } $this->sciezki[]=array(); //tworze nowa sciezke end($this->sciezki); //ustawiam arraya na koncu $aktualny_nr_sciezki=key($this->sciezki); $this->sciezki[$aktualny_nr_sciezki][]=$wezel; echo "\n//
jade gl ".$wezel." nr sciezki to:".$aktualny_nr_sciezki.":::".__CLASS__.":".__FUNCTION__.":".__LINE__."
"; // print_r($this->sciezki); self::trasuj($wezel,$last_wezel,$aktualny_nr_sciezki); // print_r($this->sciezki); } return $this->sciezki; } function najdluzsza_sciezka() { $najdluzsza=0; $max_dlugosc=0; foreach($this->sciezki as $sciezka=>$trasa) { if($max_dlugosc 99 Najdluzsza sciezka to ".$najdluzsza.", a jej dlugosc to ".$max_dlugosc; print_r($this->sciezki[$najdluzsza]); echo "\n*/"; return $najdluzsza; } }