下面是对顺序表进行直接插入排序的算法,请填写以下空白并回答问题。
voidInsertSort(SeqListR,intn)
{
inti,j;
for(_____;i<=n;i++)
if(R[i].keyR[0]=R[i];//将当前记录复制为哨兵
for(j=i-l;R[O].key_____;//记录后移
_____;//R[i]插入到正确的位置
}
}
欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web
下面是对顺序表进行直接插入排序的算法,请填写以下空白并回答问题。
voidInsertSort(SeqListR,intn)
{
inti,j;
for(_____;i<=n;i++)
if(R[i].keyR[0]=R[i];//将当前记录复制为哨兵
for(j=i-l;R[O].key_____;//记录后移
_____;//R[i]插入到正确的位置
}
}
i=2; R[j+1]=R[j]; R[j+1]=R[O]。 解析:假设待排序的记录存储在数组R[1…n]中,在排序过程中的某一时刻,R被划分为两个子区间,R[1...i一1和 R[i...n],其中前一个为已排好序的有序区,后一个为无序区。排序过程中,只需要每次从无序区中取出第一个元素,把它插入到有序区的适当位置,使之成为新的有序区。
×
提示:小程序已经收录此题,请在小程序查看名师解析。翰林刷小程序提供搜题,刷题,助你轻松通过考试