C#实现的3种排序算法--冒泡排序、选择排序、插入排序

using  System;
using  System.Collections.Generic;
using  System.Text;
namespace  ConsoleApplication1
{
  
class Program
  
{
    
static void Main(string[] args)
    
{
      
int[] iarrary = new int[] {1,5,13,6,10,55,99,2,87,12,34,75,33,47};
         
//mpsort(iarrary);
         
// xzsort(iarrary);
      crsort(iarrary);
      
for (int n = 0; n < iarrary.Length; n++)
      
{
        Console.WriteLine(
"{0}",iarrary[n]);
      }

      Console.Read();
    }


    
public static void mpsort(int [] list)//冒泡排序
    {
      
int i, j, temp;
      
bool exchange;
      
for (i = 1; i < list.Length; i++)//最多做list.Length-1趟排序
      {
        exchange 
= false;
        
for (j = 0; j < list.Length-i;j++ )
        
{
          
if(list[j]>list[j+1])
          
{
            temp 
= list[j];
            list[j] 
= list[j + 1];
            list[j 
+ 1= temp;
            exchange 
= true;
          }

        }

        
if (!exchange)
        
{
          
break;
        }

      }

    }


    
public static void xzsort(int[] list)//选择排序
    {
      
int i,j,temp,min;
      
for (i = 0; i < list.Length; i++)
      
{
        min 
= i;
        
for (j = i + 1; j < list.Length;j++ )
        
{
          
if (list[min] > list[j])
          
{
            min 
= j;
          }

        }

        temp 
= list[min];
        list[min] 
= list[i];
        list[i] 
= temp;
      }

    }


    
public static void crsort(int[] list)//插入排序
    {
      
int i,j,temp;
      
for (i = 1; i < list.Length; i++)
      
{
        temp 
= list[i];
        j 
= i;
        
while((j > 0)&&(list[j-1]>temp))
        
{
          list[j]
=list[j-1];
          
--j;
        }

        list[j]
=temp;
      }

    }

  }

}

转载于:https://www.cnblogs.com/xiaobeisong/archive/2008/07/08/1238198.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值