Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [PHP] Wyjaśnienie kodu - sortowanie liczb w tablicy
victor_19
post 4.01.2011, 12:55:33
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 10.11.2010

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


Byłbym wdzięczny za wyjaśnienie kodu jak działa...

  1. $tablica[0]=7;
  2. $tablica[1]=3;
  3. $tablica[2]=1;
  4.  
  5. for ($i=0;$i<=3;$i++)
  6. {
  7. for ($j=0;$j<=3;$j++)
  8. {
  9. if ($tablica[$j]>$tablica[$j+1])
  10. {
  11. $tmp = $tablica[$j];
  12. $tablica[$j] = $tablica[$j+1];
  13. $tablica[$j+1] = $tmp;
  14. }
  15. }
  16.  
  17. for ($i=0; $i<=3; $i++)
  18. {
  19. echo $tablica[$i];
  20. echo "<br />";
  21. }
  22.  


Ten post edytował victor_19 4.01.2011, 13:17:23
Go to the top of the page
+Quote Post
thek
post 4.01.2011, 15:02:46
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Nie jestem jasnowidzem, ale chyba ktoś próbował robić sortowanie bąbelkowe... Na dodatek z błędami. Weź lepiej poszukaj na necie działających przykładów, bo ten to tylko sypie błędami winksmiley.jpg Wersja poprawiona, która robi najmniej zmian w kodzie oryginalnym i działa to:
  1. $tablica[0]=7;
  2. $tablica[1]=3;
  3. $tablica[2]=1;
  4.  
  5. for ($i=0;$i<3;$i++)
  6. {
  7. for ($j=0;$j<3;$j++)
  8. {
  9. if ($tablica[$j]>$tablica[$i])
  10. {
  11. $tmp = $tablica[$i];
  12. $tablica[$i] = $tablica[$j];
  13. $tablica[$j] = $tmp;
  14. }
  15. }
  16. }
  17. for ($i=0; $i<3; $i++)
  18. {
  19. echo $tablica[$i];
  20. echo "<br />";
  21. }
Oczywiście to tylko poprawki by jak najmniej zmian było i nie sypało błędami, bo do wydajnego bąbelkowego to jeszcze nieco brakuje. W zasadzie trudno tu mówić o wydajności, bo bąbelkowe jest mało wydajnym czasowo algorytmem, ale za to oszczędza zasoby pamięci. Coś za coś.

Aha... temat zamykam, bo zrobileś crossa do http://forum.php.pl/index.php?showtopic=165942
Powód edycji: [thek]: Nie ma sensu tłumaczyć całego algorytmu. Poszukaj na necie co to jest sortowanie bąbelkowe a będziesz wiedział.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 20:30