Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2015
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.15 KB | None | 0 0
  1. import java.util.Random;
  2.  
  3. public class Dzh {
  4.     public static void main(String[] args) {
  5.         int n = 10;
  6.         int k = 1000;
  7.         int[] a = input_random_Array(n, k);
  8.  
  9.         long Time = System.nanoTime();
  10.         a = counting_sort(a, k);
  11.         long EndTime = System.nanoTime();
  12.         Time = Math.abs(EndTime - Time);
  13.  
  14.         for (int i = 0; i < n; i++) {
  15.             System.out.println(a[i]);
  16.         }
  17.  
  18.         System.out.println(Time);
  19.     }
  20.  
  21.     static int[] input_random_Array(int n, int k) {
  22.         int[] a = new int[n]; // n-size of array, k-maximum random number
  23.         Random rn = new Random();
  24.  
  25.         // fill array with random numbers
  26.         for (int i = 0; i < n; i++) {
  27.             a[i] = rn.nextInt(k); // [0;k)
  28.         }
  29.  
  30.         return a;
  31.     }
  32.  
  33.     static int[] counting_sort(int[] a, int k) {
  34.         int[] c = new int[k];
  35.         for (int j = 0; j < a.length; j++) {
  36.             c[a[j]]++;
  37.         }
  38.  
  39.         int ind = 0;
  40.         for (int i = 0; i < c.length; i++) {
  41.             for (int j = 0; j < c[i]; j++) {
  42.                 a[ind++] = i;
  43.             }
  44.         }
  45.  
  46.         return a;
  47.  
  48.     }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement