C#简单选择排序

       简单选择排序算法:

      设所排序序列的记录个数为n。i取1,2,…,n-1,从所有n-i+1个记录(R,R[i+1],…,R[n]中找出排序码最小的记录,与第i个记录交换。执行n-1趟 后就完成了记录序列的排序。

      代码如下:

ExpandedBlockStart.gif 简单选择排序代码
 1  using  System.Text;
 2  protected   void  Page_Load( object  sender, EventArgs e)
 3      {
 4         SimpleSelectSort();
 5      }
 6 
 7       private   void  SimpleSelectSort()
 8      {
 9           int [] inputIntArray  =   new   int [ 8 ] {  8 4 7 5 2 3 6 1  };
10           for  ( int  i  =   1 ; i  <  inputIntArray.Length;i ++ )
11          { // 遍历7次 (N-1)
12               int  t  =  i  -   1 ; // 设置数组下标
13               for  ( int  j  =  i;j < inputIntArray.Length;j ++ )
14              { // 从第i个开始进行循环  起始为数组第2个
15                   if (inputIntArray[t] > inputIntArray[j])
16                  { // 获取最小值的INDEX
17                      t  =  j;
18                  }
19              }
20               // 进行置换
21               int  temp = inputIntArray[t];
22              inputIntArray[t] = inputIntArray[i - 1 ];
23              inputIntArray[i  -   1 =  temp;
24               // 打印置换后的排序结果
25              PrintSortedResult(inputIntArray ,i);
26          }
27      }
28 
29    private   void  PrintSortedResult( int [] inputIntArray, int  num)
30      {
31          StringBuilder sb  =   new  StringBuilder();
32           for  ( int  i  =   0 ; i  <  inputIntArray.Length; i ++ )
33          {
34               if  (i  ==   0 )
35              {
36                  sb.Append(inputIntArray[i].ToString());
37              }
38               else
39              {
40                  sb.Append( " , "   +  inputIntArray[i].ToString());
41              }
42          }
43          Response.Write( " " + num + " 次排序的结果:   " + sb.ToString() + " <br/> " );
44      }

 

结果显示如下图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值