gpt4 book ai didi

algorithm - 计算这个选择排序实现的大 O 复杂度?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:47:28 29 4
gpt4 key购买 nike

我正在尝试计算此选择排序实现的大 O 时间复杂度:

void selectionsort(int a[], int n)                    
{
int i, j, minimum, index;
for(i=0; i<(n-1); i++)
{
minimum=a[n-1];
index=(n-1);
for(j=i; j<(n-1); j++)
{
if(a[j]<minimum)
{
minimum=a[j];
index=j;
}
}
if (i != index)
{
a[index]=a[i];
a[i]=minimum;
}
}
}

我该怎么做呢?

最佳答案

形式上,您可以使用以下方法获得具有增长顺序的确切迭代次数:

enter image description here

执行以下片段代码(原始代码的综合版本),sum 将等于 T(n) 的封闭形式。

sum = 0;
for( i = 0 ; i < ( n - 1 ) ; i ++ ) {
for( j = i ; j < ( n - 1 ) ; j ++ ) {
sum ++;
}
}

关于algorithm - 计算这个选择排序实现的大 O 复杂度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19525898/

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