fork download
  1. // InsertionSort
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5.  
  6. void printA(int a[], int n){
  7. int i;
  8. for(i=0;i<n;i++){
  9. printf("%d ",a[i]);
  10. }
  11. printf("\n");
  12. }
  13.  
  14. void swap(int* a, int* b){
  15. int tmp;
  16. tmp = *a;
  17. *a = *b;
  18. *b = tmp;
  19. }
  20.  
  21. void InsertionSort(int a[], int n){
  22. //ここを書く
  23. int x,y,z;
  24. for(x = 1; x < n; x++){
  25. z = a[x];
  26. y = x - 1;
  27. while(y >= 0 && a[y] > z){
  28. a[y + 1] = a[y];
  29. y--;
  30. }
  31. a[y + 1] = z;
  32. }
  33.  
  34. }
  35.  
  36. int main(void){
  37. int n,i;
  38. int *v;
  39. scanf("%d",&n);
  40. v = (int*)malloc(sizeof(int)*n);
  41. if(v==NULL){
  42. printf("ERROR\n");
  43. return -1;
  44. }
  45. for(i=0;i<n;i++){
  46. scanf("%d",&v[i]);
  47. }
  48. InsertionSort(v,n);
  49. printA(v,n);
  50. free(v);
  51. return 0;
  52. }
  53.  
Success #stdin #stdout 0.01s 5324KB
stdin
8
21 55 5 13 8 2 34 3

stdout
2 3 5 8 13 21 34 55