CountSort(dla integerow)


COUNTSORT

Atutami tego algorytmu są jego szybkość ( złożoność teoretycznie stała ) i stabilność. Szybkość ponieważ działa on liniowo w każdym przypadku. Poza tym jest on stabilny, ponieważ kilka takich samych wartości sortuje w tej samej kolejności jak występowały one w oryginalnej tablicy. Dzieje się tak, ponieważ aby wstawić jakąś wartość do TEMP-a, program pobiera ją z TAB-a czytając od prawej. Czyli dwie `4' , zostaną wstawione do TEMP-a posortowane , ale w kolejności występowania w TAB-ie.

0x08 graphic

0x08 graphic
TAB [10]

0

1

2

3

4

5

6

7

8

9

0x08 graphic
5

3

5

4

4

3

6

0

3

4

0x08 graphic

TEMP [10]

0

1

2

3

4

5

6

7

8

9

0x08 graphic
5

3

5

4

4

3

6

0

3

4

0x08 graphic
0x08 graphic
0

3

3

4

6

0x08 graphic
0x08 graphic

0x08 graphic
0x08 graphic
0x08 graphic

COUNT [max+1]

0x08 graphic
0

1

2

3

4

5

6

0x08 graphic
0x08 graphic
1

0

0

3

3

2

1

0x08 graphic
0x08 graphic
1

1

1

4

7

9

10

6

0x08 graphic

3

0x08 graphic
0x08 graphic
0

9

2

...

ETAPY SORTOWANIA:

1/ KOPIOWANIE DO TEMP-a

2/ SZUKANIE MAKSYMUM aby móc utworzyć COUNT

3/ WYLICZENIE WYTĄPIEŃ KONKRETNEJ WAROŚCI

4/ OBLICENIE POZYCJI WARTOSCI (pierwsza z prawej) + 1

5/ Opis obok =>

-------------------------- -----------

Rozmiar Tablicy: 100,000

Funkcja CountSort : 0.080000

_Analyza + Alokacja count-a: 0.010000

_Czas sortowania : 0.070000

-------------------------- -----------

Rozmiar Tablicy: 10

Funkcja CountSort : 0.000000

_Analyza + Alokacja count-a: 0.000000

_Czas sortowania : 0.000000

-------------------------- -----------

Rozmiar Tablicy: 500,000

Funkcja CountSort : 0.391000

_Analyza + Alokacja count-a: 0.030000

_Czas sortowania : 0.361000

-------------------------- -----------

Rozmiar Tablicy: 1,000,000

Funkcja CountSort : 0.781000

_Analyza + Alokacja count-a: 0.050000

_Czas sortowania : 0.731000

-------------------------- -----------

Rozmiar Tablicy: 2,000,000

Funkcja CountSort : 1.572000

_Analyza + Alokacja count-a: 0.110000

_Czas sortowania : 1.462000

-------------------------- -----------

Rozmiar Tablicy: 4,000,000

Funkcja CountSort : 10.936000

_Analyza + Alokacja count-a: 6.620000

_Czas sortowania : 4.316000

1

2

3

5

Strona Czytania (Punkt 5)

4



Wyszukiwarka

Podobne podstrony:
gruźlica dla studentów2
Prezentacja 2 analiza akcji zadania dla studentow
1Ochr srod Wyklad 1 BIOLOGIA dla studid 19101 ppt
Kosci, kregoslup 28[1][1][1] 10 06 dla studentow
higiena dla studentów 2011 dr I Kosinska
Parametry życiowe dla WCEM
PREZENTacja dla as
Wyklad FP II dla studenta
badanie dla potrzeb fizjoterapii
9 1 18 Szkolenie dla KiDów
zapotrzebowanie ustroju na skladniki odzywcze 12 01 2009 kurs dla pielegniarek (2)
Mat dla stud 2
Materiały dla studentów ENDOKRYNOLOGIA
JP Seminarium 9 wersja dla studentów

więcej podobnych podstron