Chinaunix首页 | 论坛 | 博客
  • 博客访问: 105264
  • 博文数量: 23
  • 博客积分: 555
  • 博客等级: 中士
  • 技术积分: 320
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-14 11:04
文章分类

全部博文(23)

文章存档

2012年(23)

我的朋友

分类: C/C++

2012-05-10 23:21:55

@@@ 悲剧,原来上次面试让我写的冒泡排序,我写的是选择排序的马甲形式,真懵 @@@

选择排序:
①选出最小的放在前面
②两部分:前半部有序,后半部分无序

  1. void select_sort(int a[], int n)
  2. {
  3.     // i=0,so it is different from insert_sort
  4.     for(int i=0; i<n; i++)
  5.     {
  6.         // select the one which is least for j_to_Last.
  7.         int least = a[i];
  8.         int index = i;

  9.         for(int j = i+1; j < n; j++)
  10.         {
  11.             if (a[j] < least)
  12.             {
  13.                 least = a[j];
  14.                 index = j;
  15.             }
  16.         }        

  17.         // put the least on the front
  18.         a[index] = a[i];
  19.         a[i] = least;

  20.         output(a,n);
  21.     }
  22. }



阅读(669) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~