gpt4 book ai didi

c - 排序算法的c实现

转载 作者:行者123 更新时间:2023-11-30 16:31:01 24 4
gpt4 key购买 nike

为了按升序对数组进行排序,我想到了以下内容:

#define SIZE 10 //as an example

void swapValues(int *x, int *y)
{
int temp = *x;
*x = *y;
*y = temp;
}

void sort(int *array)
{
int i, j;
for(i = 0; i < SIZE-1; i++) {
for(j = i + 1; j < SIZE; j++) {

if(array[i] > array[j]) {
swapValues( (array+i) , (array+j) );
}

}
}
}


该功能有效,但查看后 this ,我有点好奇,这看起来像冒泡排序算法,但事实并非如此,所以:

  1. 此函数是已知排序算法的实现吗?
  2. 与冒泡排序或选择排序等其他简单排序算法相比,此函数的表现如何?

最佳答案

您的实现使用选择排序。这不是冒泡排序。由于在冒泡排序中我们同时比较两个连续的元素,因此这不是它。这是选择排序,您一次将数组中的一个元素与其余元素进行比较,并相应地交换。

关于c - 排序算法的c实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50826569/

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