Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wszystkie części wspólne podzbiorów, All common sequences of subarrays
sabat24
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Interesuje mnie, czy jest gotowy algorytm (na wzór Longest common substring), który operowałby bezpośrednio na tablicach z nieposortowanymi elementami? Przykład dużo bardziej rozjaśni, czego poszukuję:
Wejście:
  1. 'bo_1' =>
  2. 0 => 'bo_5'
  3. 1 => 'bo_1'
  4. 'bo_5' =>
  5. 0 => 'bo_1'
  6. 1 => 'bo_5'
  7. 2 => 'bo_17'
  8. 'bo_17' =>
  9. 0 => 'bo_17'
  10. 1 => 'bo_18'
  11. 'bo_19' =>
  12. 0 => 'bo_19'
  13. 1 => 'bo_1'
  14. 2 => 'bo_5'
  15. 3 => 'bo_17'


Wyjście
  1. 0 =>
  2. 0 => 'bo_19'
  3. 1 => 'bo_1'
  4. 2 => 'bo_5'
  5. 3 => 'bo_17'
  6. 1 =>
  7. 0 => 'bo_17'
  8. 1 => 'bo_18'


Próbowałem to wykonać za pomocą array_diff i rekurencji, ale dostawałem nieunikalne wyniki i nie zawsze poprawne.

Ten post edytował sabat24 11.03.2015, 09:52:07
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sabat24
post
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Dziękuję. Wygląda bardziej przyzwoicie niż mój kod. Jedno pytanie. Przy powyższych danych wejściowych daje mi następujący rezultat:
  1. (
  2. [c] => 2
  3. )
  4. (
  5. [b] => Array
  6. (
  7. [0] => 2
  8. [1] => 3
  9. [2] => 4
  10. [3] => 5
  11. )
  12.  
  13. [e] => Array
  14. (
  15. [0] => 5
  16. [1] => 6
  17. )
  18.  
  19. [f] => Array
  20. (
  21. [0] => 5
  22. [1] => 7
  23. )
  24.  
  25. )


$maxArrays zawiera zbiór c, ale posiada tylko wartość 2
$none jest w porządku, ale ląduje tam zbiór b, który powinien być chyba w $maxArrays

Generalnie dla mnie nie ma to znaczenia, bo i tak sobie mogę pobrać orginalne dane ze zbioru c i też nie muszę mieć podziału na dwie zmienne, więc nieważne gdzie finalnie wyląduje b. Pytam z ciekawości, czy taki jest zamierzony efekt?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 02:11