Advertisement
rootUser

Radix sort without linklist

May 27th, 2016
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(void)
  4. {
  5.     int n, i, j, passes, digit, x = 1, k;
  6.     int ar[100];
  7.     printf("enter number of values: ");
  8.     scanf( "%d",&n);
  9.     //printf("enter the numbers: ");
  10.     for(i=0; i<n; i++)ar[i]=rand()%1000; //scanf(" %d",&ar[i]);
  11.     printf("before sort:\n");
  12.     for(i=0; i<n; i++)printf(" %d",ar[i]);
  13.     printf("\n");
  14.     for(passes=1; passes<=3; passes++)
  15.     {
  16.         int table[10][n];
  17.         for(i=0; i<=9; i++)
  18.         {
  19.             for(j=0; j<n; j++)
  20.             {
  21.                 table[i][j]=-9999;
  22.             }
  23.         }
  24.         for(i=0; i<n; i++)
  25.         {
  26.             digit=(ar[i]/x)%10;
  27.             table[digit][i]=ar[i];
  28.         }
  29.         k=0;
  30.         for(i=0; i<=9; i++)
  31.         {
  32.             for(j=0; j<n; j++)
  33.             {
  34.                 if(table[i][j]!=-9999)
  35.                 {
  36.                     ar[k]=table[i][j];
  37.                     k=k+1;
  38.                 }
  39.             }
  40.         }
  41.         x*=10;
  42.     }
  43.     printf("after sort:\n");
  44.     for(i=0; i<n; i++)printf(" %d",ar[i]);
  45.     printf("\n");
  46.     return 0;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement