选择排序改进了冒泡排序,每次遍历列表只做一次交换,为了做到这一点,一个选择排序在遍历时寻找最大的值,并在完成遍历后,将其放到正确的地方。第二次遍历,找出下一个最大的值。遍历n-1次排序n个项,最终项必须在n-1次遍历之后
例子如下:
代码如下:
#include<stdio.h>void selectSort( int data[] ,int n ){/*----begin------*/int i,j;int min = 0;for(i=0;i<n-1;i++){min = i;for(j=i+1;j<n;j++){if(data[min]>data[j]){min = j;}}int temp = data[min];data[min] = data[i];data[i] = temp;}for(i=0;i<n;i++){printf("%d ",data[i]);}/*-----end------*/}int main(){int data[]={26,54,93,17,71,31,44,55,20}; selectSort(data,9);return 0;}
1200字范文,内容丰富有趣,写作的好帮手!