难得住寂寞的人才能笑到最后。。。

只要敲门才会有回音,才有可能走进去!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

插入排序

Posted on 2008-11-28 21:13  xum  阅读(221)  评论(0)    收藏  举报

#include<iostream.h>
void inserter( int a[], int size );
void main()
{
 int i;
 int array[] = {1,2,5,14,69,3,6};
 int len = sizeof( array )/sizeof( int );
 cout << "输出数组长度!" << endl;
 cout << len <<endl;
 cout << "原数组!\n";
 for( i = 0; i < len - 1; i++ )
 {
  cout << array[i] << ",";
 }
 cout << endl << endl;
 
 inserter( array, len - 1 );
 
}

void inserter( int a[], int size )
{
 
 int i;
 int j;
 int inserter, index;
 
 for( i = 1; i < size; i++ )
 {
  inserter = a[i];
  index = i - 1;  
  while ( index >= 0 && inserter < a[index] )  // 排序过程
  {
   a[index + 1] = a[index]; //后移
   index--;
  }
  
  a[index + 1] = inserter; //插入部分
  cout << "排好的数组!";
  for( j = 0; j < size; j++ )  
  {
   cout << a[j] << ",";
   if( j == i )   // 将已排好序的与未排好的分开
    cout << "|";
  }
  cout << endl;
 }
}