INSERTION SORT
ここで実装しようとしていますがC
、これは成功したと思います。ただし、に問題がありpassing arrays as arguments
ます。
つまり、関数に渡される元の配列にinsertion_sort
は、並べ替えられた配列自体の要素が含まれている必要があります。
#include<stdio.h>
int * insertion_sort(int *a,int length)
{
int j;
for(j=1;j<length;j++)
{
int i,key=a[j];
for(i=j-1;j>=0;j--)
{
if(a[i]<=key)
break;
a[i+1]=a[i];
}
a[i+1]=key;
}
return *a;
}
int main(void)
{
int a[]={10,12,7,6,9,8};
insertion_sort(a,6);
int i;
for(i=0; i<6; i++)
printf("%d\n", a[i]);
return 0;
}
EDIT 出力画面には何も表示されません。ここでバグを見つけるのを手伝ってください。ありがとう !!