选择排序算法

来源:互联网 发布:语音识别模块 淘宝 编辑:程序博客网 时间:2024/06/07 06:51
#define N 10int main(){using namespace std;int arr[N] = {0,1,24,30,4,-4,6,7,8,28}, i, j ,temp;for (i = 0; i < N; i++){min = i;for (j = i+1; j < N; j++){if (arr[min] < arr[j])min = j;}if (i != min){temp = arr[i];         arr[i] = arr[min];      arr[min] = temp;          }}

选择排序算法思想大致如下:

          用min保存第一个元素值小标即(N-N+i), 然后用arr[N-N+i]值跟后面所有值(即第二个for循环arr[j]的值)做比较(大于或者小于),如果条件是成立的,那么就让min去保存做小值的坐标,到了if的判断语句, 如果 i != min,那么证明min的值被改写过,那么就交换i坐标数组和min坐标数组的值。。来回重复上面步骤,当i 大于等于 N,就退出所以循环,就此排序完成。。

                         

原创粉丝点击