早教吧 育儿知识 作业答案 考试题库 百科 知识分享

求大神做算法题目,最好有讲解以关键码序列(503,087,512,061,908,170,897,275,653,426),为例,手工执行以下排序算法,写出每一趟排序结束时的关键码状态:(1)直接插入排序;(2)快速排序

题目详情
求大神做算法题目,最好有讲解
以关键码序列(503,087,512,061,908,170,897,275,653,426),为例,手工执行以下排序算法,写出每一趟排序结束时的关键码状态:(1) 直接插入排序;(2) 快速排序;(3) 归并排序;
▼优质解答
答案和解析
#include
#include
using namespace std;
void output(int array[],int n)
{
cout<for(int i=0;i cout<cout<}
void BubbleSort(int array[],int n)
{
int i=0;
int j=0;
int temp;
for(i=0;i{
for(j=0;j if(array[j]>array[j+1])
{
temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}
output(array,n);
}
}
int partion(int a[],int p,int r)
{
int x=a[r];int middle=p;
for(int j=p;j if(a[j] {
{
int temp=a[middle];
a[middle]=a[j];
a[j]=temp;
middle++;
}
}
int temp=a[r];
a[r]=a[middle];
a[middle]=temp;
return middle;
}
void QuickSort(int a[],int p,int r)
{
if(p{
int q=partion(a,p,r);
QuickSort(a,p,q-1);
QuickSort(a,q+1,r);
}
}
void InsertSort(int array[],int n)
{
int i,j; int temp;
for(i=0;i{
for(j=i;j>0 && array[j-1] {
temp=array[j];
array[j]=array[j-1];
array[j-1]=temp;
}
}
}
int main()
{
int array[]={0,-2,11,-4,13,-5,14,-43};
int choose;
cout<cout<cout<cout<cin>>choose;
switch(choose)
{
case 1: BubbleSort(array,7); break;
case 2:QuickSort(array,0,7);break;
case 3:InsertSort(array,7);break;
default:break;
}
for(int i=0;i<=7;i++)
cout<cout< return 0;
}
每个都要动态显示的话,你直接调用output()函数就可以了,另外归并排序你只需要再写一个归并排序的核心算法程序,在主函数中调即可,如果有问题的话再说
看了 求大神做算法题目,最好有讲解...的网友还看了以下:

对如图所示的叙述,不正确的是()A.此图表示的是植物嫁接B.结构A是接穗,结构B是砧木C.接穗与砧  2020-05-17 …

若将一段无籽橘子枝条嫁接到一棵有籽橘子的植株上,结果是()A.砧木结出有籽和无籽橘子B.接穗只结出  2020-05-17 …

以黑枣为砧木,以柿子为接穗得到嫁接果树,以下有关说法错误的是()A.嫁接果树结黑枣B.嫁接果树的生  2020-05-17 …

若将一段无籽橘子枝条嫁接到一棵有籽橘子的植株上,结果是()A.砧木结出有籽和无籽橘子B.接穗只结出  2020-05-17 …

在点—点式网络中,一条通信线路只能连接一对结点,如果两个结点之间没有直接连接的线路,那么它们 _  2020-05-24 …

如图,在正方形中,点是的中点,连接、,点是的中点,连接、,点是上一点且,过点做于点,连接.下列结论  2020-07-30 …

以黑枣为砧木,以柿子为接穗得到嫁接果树,以下有关说法错误的是()A.嫁接果树结黑枣B.嫁接果树的生殖  2020-11-02 …

如图为某果农嫁接果树的过程,如下说法不恰当的是()A.甲为砧木,乙为接穗,嫁接后所结出果实的口味与甲  2020-11-04 …

图中,ABCD是某黑箱面板上的四个接线柱,已知箱内有一个电池组和一个电铃,先用一小灯泡的接线头a和b  2020-12-05 …

接种卡介苗能预防肺结核病的原因是()A.直接杀死结核杆菌B.使人在不生病的情况下产生抗结核病的抗体C  2020-12-07 …