..


Linki sponsorowane

Sortowanie Algorytmy w C

Artykuł napisany przez Stefano Cancedda
Strona 1 z 5

Szyfr jest sekwencją operacji sortowania, który przypisuje pierwszeństwo kolejności pozycji w ustalonej kolejności wynika z raportu. Linie te będą narażone najczęściej (z un'approccio próbek silnie zorientowanych) i każdy z nich będzie skomentował na temat zalet i wad.
Dla uproszczenia w przykładach będą zawsze wykorzystywane jako zbiór liczb naturalnych i relacji porządku, jak w większości, algorytmy są nadal narażone powszechnie obowiązujące, bez krótkiej pracy dostosowania kodu.

Wybór rodzaju

Aby zamówić określoną liczbę jeden przed i intuicja mogą być skanowane tyle razy, ile przewoźnik całości, z każdego wyszukiwania krok do minimalnej wartości i dodać go do uporządkowanej kolejności, początkowo utożsamia się z drugiego przewoźnika;






 Przykład: {5,1,3,8,2}







 Krok 1 -> {1, X, X, X, X}







 Krok 2 -> {1,2, X, X, X}







 Krok 3 -> {1,2,3, X, X}







 Krok 4 -> {1,2,3,5, X}







 Krok # 5 -> {1,2,3,5,8}



(X jest zaznaczone miejsce lokalizacji nowego przewoźnika jeszcze nie na piśmie)

Z punktu widzenia miejsca w pamięci, algorytm ten stosowany w ten sposób jest bardzo niekorzystne, ponieważ początkowy zestaw jest kopiowana do innego. Prosta sztuczka polega na zastąpieniu korygujących operacji kopiowania z wymianą minimalną wartość po prostu znaleźć pierwszy element, który nie jest częścią zbioru liczb już zamówione.






 Przykład: {5,1,3,8,2}







 Krok 1 -> {1,5,3,8,2}







 Krok 2 -> {1,2,3,8,5}







 Krok 2 -> {1,2,3,8,5}







 Krok 3 -> {1,2,3,5,8}



Szyfr wprowadza Sortuj wyboru, co wynika możliwość realizacji:





 sel_sort (int * v, int rozmiar)







 {



   



 int i = 0, temperatura = 0, y = 0, j = 0;



   



 for (i = 0, i = j -)



   



 {

  

      



 

      



 {



         



 temp = v [j];



         



 y = j;



      



 }

  

   



 swap (v, i, y) / / Zmienne pozycje w wektorze v iey



   



 }







 }



Podwójnej pętli położony jest zgadnąć, że liczba porównań przez ten algorytm jest kwadratowy niż liczba elementów.
Oznacza to, że liczba porównań są do rzędu wielkości równej do kwadratu liczby elementów w kolekcji.
Należy pamiętać, że w normalnych przypadkach jest to liczba porównań do ważenia wydajności i pozostałe działania, większość zadań, mają znikomy koszt w porównaniu do porównania.
Kiedy trzeba, aby rekordy o znacznych rozmiarach, liczbę wymian ma decydujący wpływ na wydajność. W tym drugim przypadku Sortuj Wybór okazuje się być doskonałym rozwiązaniem i optymalne, ponieważ każdy element jest przesuwany co najwyżej raz.

Sortuj wyboru jest również stabilny algorytm.
Stabilny algorytm zachowuje efekt poprzednich zamówień w przypadku struktur danych są traktowane w wielu kluczy, takich jak Imię i Nazwisko:






 1.

 



 Charles Green







 2.

 



 Andrea Rossi







 3.

 



 Mario Rossi







 4.

 



 Luciano Bianchi



Zamawiamy pola imię:





 1.

 



 Andrea Rossi







 2.

 



 Charles Green







 3.

 



 Mario Rossi







 4.

 



 Luciano Bianchi



Teraz możemy zamówić przez nazwisko, bardziej stabilny algorytm zachowuje pierwszeństwo początkowego, lub, w przypadku remisu między klawiszami, na których są zamówienia, to pozycja pierwszego celu ustalenia ostatecznej lokalizacji.





 1.

 



 Luciano Bianchi







 2.

 



 Andrea Rossi







 3.

 



 Mario Rossi







 4.

 



 Charles Green



Stabilny algorytm zapewnia, że ​​w tym przypadku zawsze poprzedza Rossi Mario Andrea Rossi. Nie ma stabilne zachowanie nie jest przewidywalny, więc to może być odwrócone pozycji 2 i 3.

Sortowania wyboru jest również na miejscu.
Algorytm powiedział na miejscu (lub nawet w miejscu), jeśli nie brać dodatkowego miejsca pamięci niż oryginalna baza danych, lub jest to małe stałej ilości.

W tej samej kategorii ...
E-Learning
Front Page (Ebook) Front Page (Ebook)
Tworzenie stron WWW bez znajomości języka HTML. Zaledwie 25 €.
Javascript (Kurs) Javascript (Kurs)
Kompletny przewodnik po stronie klienta skryptów. Od 39 €.
Nagrywanie płyt CD i DVD (Ebook) Nagrywanie płyt CD i DVD (Ebook)
Przewodnik do nagrywania płyt CD i DVD z darmowych programów. Zaledwie 25 €.
Linki sponsorowane