gpt4 book ai didi

c++ - 第一个元素在插入排序期间未排序

转载 作者:行者123 更新时间:2023-11-30 02:57:47 25 4
gpt4 key购买 nike

#include <stdio.h>
#include <conio.h>

int main()
{

int a[6] = {5,2,4,6,1,3};
int j,i,k,cnt=1;
for (j=1;j<7;j++)
{
k = a[j];
i = j-1;
while(i>0 && a[i]>k)
{
a[i+1] = a[i];
i = i-1;
}
a[i+1] = k;
}
for(i=0;i<6;i++)
{
printf("\n Final op %d",a[i]);
}
getch();
}

我在静态数组中传递一些元素,但第一个元素是值

a[0] 未排序,但从 a[1]a[5] 的其余值已排序

最佳答案

问题是>0

while(i>0 

应该这样读

while(i>=0 

另外,

中有未定义的行为
    k = a[j];

j==6 时。

关于c++ - 第一个元素在插入排序期间未排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14180881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com