Add 选择法排序

master
pn43tqvrm 4 years ago
parent a1c0db7c17
commit ec09688d23

@ -0,0 +1,21 @@
//选择法排序
void Sort(int a[], int n)
{
int i, j, k, temp;
for(i = 0; i < n - 1; i ++)
{
k = i;
for(j = i + 1; j < n; j ++)
{
if(a[j] < a[i])//a[j] > a[i]是升序, a[j] < a[i]是降序
k = j //记录最小(大)数 下标位置
}
}
if(k != i)
{
trmp = a[k];
a[k] = a[i];
a[i] = temp;
}
}
//复杂度说明从代码中可以看出一共遍历了n + n-1 + n-2 + … + 2 + 1 = n * (n+1) / 2 = 0.5 * n ^ 2 + 0.5 * n那么时间复杂度是O(N^2)。
Loading…
Cancel
Save