![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 2 Dołączył: 12.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich,
Mam problem z wyciągnięciem z tablicy unikalnych ścieżek. Tablica wygląda przykładowo:
oczywiście nie zawsze najdłuższa ścieżka jest na dole, chcę aby pozostały tylko najdłuższe ścieżki, czyli:
Próbowałem array_unique i funkcji z forum, ale nie działają prawidłowo. Proszę was o pomoc, z góry dziękuje wszystkim za chęci. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 191 Pomógł: 5 Dołączył: 13.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
linia 20: if( strpos( $klucz, $wartosc.'.' ) === 0 ){ // dodajesz kropkę, aby potwierdzić, że to podciąg rodzica
@Pr0100 nie chce mi się robić testów wydajnościowych, bo to gruba przesada będzie, ale zwróć uwagę na to, iż: 1) sortowanie wyniku nie ma nic do rzeczy, bo i tak obaj nie zachowujemy porządku kluczy, 2) robisz dokładnie to samo co ja, ale niepotrzebnie komplikując kod 3) Twój skrypt działa niepoprawnie: moje dane wejściowe, Twoja funkcja, wynik: array ( 0 => '1.1.11', 1 => '31.1.17.18.24.56', 2 => '31.2.13', 3 => '1.1.1', 4 => '31.1.17.18.24.56.78.12', ) wartość pod kluczem 1 jest podciągiem 4 mały test: http://pastebin.com/f2d4bbd26 moja wersja jest przeszło 2x szybsza poprawiona wersja
KU PAMIĘCI Ten post edytował Łukasz O. 24.06.2009, 20:52:38 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 15:40 |