小型电商网站模板,广州做网站的公司,程序员做游戏还是做网站好,做网站需要服务器吗一、步骤
选择排序的基本思想#xff1a;每一次从待排序的数据元素中选出最小#xff08;或最大#xff09;的一个元素#xff0c;存放在序列的起始位置#xff0c;直到全部待排序的数据元素排完 。
1.首先#xff0c;我们先建立一个乱序数组#xff0c;如#xff1…一、步骤
选择排序的基本思想每一次从待排序的数据元素中选出最小或最大的一个元素存放在序列的起始位置直到全部待排序的数据元素排完 。
1.首先我们先建立一个乱序数组如 2.其次我们遍历数组选出最大或最小的元素与数组的尾部或首部位置的元素位置互换。在这里为了提高效率我们可以遍历一遍把最大和最小的元素一起选出然后放到该在的位置。
3.重复上述步骤即可
图片详述 二、代码
void Swap(int* p1, int* p2)
{int tmp *p1;*p1 *p2;*p2 tmp;
}
void SelectSort(int* arr, int n)
{int begin 0, end n - 1;while (begin end){ int maxi begin, mini begin; for (int i begin; i end; i){if (arr[i] arr[mini]){mini i;}if (arr[i] arr[maxi]){maxi i;}}Swap(arr[begin], arr[mini]);if (begin maxi) //begin的位置可能和maxi的位置重合当执行上述代码Swap(arr[begin], arr[mini])时begin位置的元素可能会跑到mini位置上去{maxi mini;}Swap(arr[end], arr[maxi]);begin;end--;}
}