Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- void countingsort(int A[], int B[], int k, int rozmiar)
- {
- int i;
- int *C = new int [k+1];
- for (i = 0; i <= k; i++)
- C[i] = 0;
- for (i = 0; i < rozmiar; i++)
- C[(A[i])]++;
- for (i = 1; i <= k; i++)
- C[i] += C[i-1];
- for (i = rozmiar-1; i >= 0; i--)
- {
- B[(C[(A[i])])-1] = A[i];
- C[(A[i])]--;
- }
- delete [] C;
- }
- int max_liczba(int tablica[], int rozmiar)
- {
- int max = tablica[0];
- for (int i = 1; i < rozmiar; i++)
- {
- if (max < tablica[i])
- max = tablica[i];
- }
- return max;
- }
- int main()
- {
- int ilosc_liczb, i;
- cout << "Podaj ilosc licz do posortowania: ";
- cin >> ilosc_liczb;
- int *tablica_wejsciowa = new int [ilosc_liczb];
- int *tablica_wyjsciowa = new int [ilosc_liczb];
- for (i = 0; i < ilosc_liczb; i++)
- {
- cout << "Podaj liczba: ";
- cin >> tablica_wejsciowa[i];
- }
- int k = max_liczba(tablica_wejsciowa, ilosc_liczb);
- countingsort(tablica_wejsciowa,tablica_wyjsciowa, k, ilosc_liczb);
- for (i = 0; i < ilosc_liczb; i++)
- cout << "tablica[" << i << "] = " << tablica_wyjsciowa[i] << endl;
- delete [] tablica_wejsciowa;
- delete [] tablica_wyjsciowa;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement