c语言解决
假设有一组乱序的整数数组,要求实现从小到大的排列,采用如下方法:
第一次从这组乱序的整数中选择最小的数,与数组的第一个数进行交换;
第二次,除第一个元素外,从这组乱序的余下的整数中选择最小的数,与数组的第二个数进行交换;
第三次,除前两个元素外,从这组乱序的余下的整数中选择最小的数,与数组的第三个数进行交换;
以此类推。
试编写该算法,并写出算法的时间复杂度。
求void Func(int N)算法的时间复杂度。
void Func1(int N)
{
int count=0;
int M=10;
for(int i=0;i<N;++i)
{
for(int j=0;j<N;++j)
{
++count;
}
}
for(int k=0;k<2*N;++k)
{
++count;
}
while(M--)
{
++count;
}
printf(“%d\n”,count);
}
for(int i=N;i>0;++i)
{
for(int j=N;j<i;++j)
{