排序算法--选择排序

#include<iostream>

using namespace std;

void print(int *arr,int length)
{
 for(int i = 0;i < length;i++)
 {
  cout<<arr[i]<<"\t";
 }
 cout<<"\n";
}

void sort(int *arr,int length)
{
 int pos = 0;
 int min = 0;
 int temp = 0;
 for(int i = 0; i < length -1;i++)
 {
  min = arr[i];
  pos = i;
  for(int j = i+1; j < length;j++)
  {
   if(arr[j] < min)
   {
    min = arr[j];
    pos = j;
   }
  }
  temp = arr[i];
  arr[i] = arr[pos];
  arr[pos] = temp;
 }
}

int main()
{
 int arr[] = {8,5,7,4,6,2,3,1,9};
 int size = sizeof(arr)/sizeof(int);
 cout<<"排序前数组元素为:"<<endl;
 print(arr,size);

 sort(arr,size);
 cout<<"排序后数组元素为:"<<endl;
 print(arr,size);
 return 0;
}

posted @ 2014-02-14 10:05  c plus plus  阅读(120)  评论(0)    收藏  举报