neongm

Untitled

Jan 28th, 2021
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. void radx(int *t,int n )
  2. {
  3. list * tmp, *temp; //the queue management
  4. int exp = 10;
  5. int k, j = 0 , l=1;
  6. int max = maxi(t,n);
  7.  
  8.  
  9. for(int i=0; i=max*10/exp; i++)
  10. {
  11. //insertion to queue
  12. for(int i =0 ; i<n; i++)
  13. {
  14. k = ((t[i]%exp)/l); //digit of our position
  15. if(head[k] == NULL)
  16. {
  17. head[k] = new list;
  18. head[k]->key = t[i];
  19. head[k]->next = NULL;
  20. }
  21. else
  22. {
  23. tmp = head[k];
  24. tmp->next;
  25. while (tmp->next)
  26. {
  27. tmp = tmp->next;
  28. }
  29. ptr[k] = new list;
  30. ptr[k] -> key = t[i];
  31. tmp->next = ptr[k];
  32. ptr[k]->next = NULL;
  33. }
  34. }
  35. //remove and writeback at table
  36. for(int i= 0; i<10; i++)
  37. {
  38. tmp = head[i];
  39. while(tmp)
  40. {
  41. t[j] = tmp->key;
  42. temp = tmp;
  43. tmp = tmp->next;
  44. delete temp;
  45. j++;
  46. }
  47. head[i] = NULL;
  48. }
  49.  
  50. exp *= 10; //next position of number
  51. l *= 10;
  52. j = 0;
  53. }
  54.  
  55.  
  56. }
Advertisement
Add Comment
Please, Sign In to add comment