【发布时间】:2019-06-15 02:26:58
【问题描述】:
我正在编写一个简单的程序来对一个小数组进行排序,但是当我运行我的插入排序代码时,程序只会永远运行。
这可能是 while 循环的问题。我在纸上浏览了该程序并查看了其他一些人的代码,但我无法弄清楚为什么它不起作用。
void mySort(int d[], unsigned int n){
int i, j, k;
for (j = 1;j < n;i++){
k = d[j];
i = j-1;
while (d[i] > k && i >=0){
d[i+1] = d[i];
d[i] = k;
i = i - 1;
}
}
}
【问题讨论】:
-
你试过调试器吗?顺便说一下,看起来不像是插入排序...
-
您的 for 循环对于 (j = 1;j 似乎很奇怪
标签: c loops sorting while-loop insertion