CountingSort

CountingSort



1    void CountingSort(int E[]) {

// E - tablica parami różnych liczb naturalnych

2    int i ,

3    max:=f ind rnax(E) , // maksymalny element w tablicy E

4    Tmp [max+l] , // tablica pomocnicza długości max+l

5    Ont [si ze [E] ) ; // tablica pomocnicza długości size (E)

6

7    for (i : =0; i<size(E); i++) do // zliczanie

8    Tmp[E[i]]:=Tmp[E[i]]+1;

9

10    for (i : =1; i<max+l; i++) do // sumowanie

11    Tmp[i]:=Tmp[i]+Tmp[i-1];

12

13    for (i :=size (E)-1; i^O; i —) do { // wypisanie

14    Ont[Tmp[E[i]]-1]:=E[i];

15    Tmp[E[i]]:=Tmp[E[i]]—1;

16    }

17

18    COpy(0nt,E) ; // kopiowanie z powrotem posortowanych danych do tablicy wejściowej

19    }


Wyszukiwarka

Podobne podstrony:
HoareSplit 1int HoareSplit(int E[], int k) { // E - niepusta tablica parami różnych liczb naturalnyc
Partition 1    int Partition(int E[])    { // E - tablica parami
BinSearch 1    int BinSearch(element E[], element x) { // E - tablica parami różnych
P3160246 Dla dowolnych parami różnych liczb rzeczywistych Xo, Xi,..., f € C"[< xo, X,. ,.,xn
InsertionSort 1    void InsertionSort(int E[])    { // E  &n
SelectionSort 1    void SelectionSort(int E[])    { // E  &n
2 2 0 LICZBY ZAPRZYJAŹNIONE 2 8 Liczby zaprzyjaźnione to para różnych liczb naturalnych takich, że s
DSCN1076 (2) różnych liczb naturalnych dodatnich, to również liczba 2n jest sumą kwadratów dwóch róż
MergeSort 1    void MergeSort (int E[])    { // E - niepusta tabl
QuickSortSplit 1    void Quick.SortSplit (int E [])    { // E - n
Przykład C) Wskaźnik na pierwszą 3-elementową tablicę (pierwszą z dwóch) void main() { int

więcej podobnych podstron