排序的四种写法包括(冒泡排序,选择排序,插入排序,希尔排序)

using System;
using System.Collections.Generic;
using System.Text;


namespace SelectionSorter
{
    //冒泡排序

    public class BubbleSorter
    {
        public void Sort(int[] list)
        {
            int i, j, temp;
            bool done = false;
            j = 1;
            while ((j < list.Length) && (!done))
            {
                done = true;
                for (i = 0; i < list.Length - j; i++)
                {
                    if (list[i] > list[i + 1])
                    {
                        done = false;
                        temp = list[i];
                        list[i] = list[i + 1];
                        list[i + 1] = temp;
                    }
                }
                j++;
            }


        }
    }
    public class MainClass
    {
        public static void Main()
        {
            int[] iArrary = new int[] { 1, 5, 13, 6, 10, 55, 99, 2, 87, 12, 34, 75, 33, 47 };
            BubbleSorter sh = new BubbleSorter();
            sh.Sort(iArrary);
            for (int m = 0; m < iArrary.Length; m++)
            {
                Console.Write("{0} ", iArrary[m]);
            }
            Console.WriteLine();
            Console.ReadLine();
        }
    }

 

    //选择排序
    //public class SelectionSorter
    //{
    //    private int min;
    //    public void Sort(int[] list)
    //    {
    //        for (int i = 0; i < list.Length - 1; i++)
    //        {
    //            min = i;
    //            for (int j = i + 1; j < list.Length; j++)
    //            {
    //                if (list[j] < list[min])
    //                    min = j;
    //            }
    //            int t = list[min];
    //            list[min] = list[i];
    //            list[i] = t;
    //        }


    //    }
    //}
    //public class MainClass
    //{
    //    public static void Main()
    //    {
    //        int[] iArrary = new int[] { 1, 5, 3, 6, 10, 55, 9, 2, 87, 12, 34, 75, 33, 47 };
    //        SelectionSorter ss = new SelectionSorter();
    //        ss.Sort(iArrary);
    //        for (int m = 0; m < iArrary.Length; m++)
    //            Console.Write("{0} ", iArrary[m]);
    //        Console.WriteLine();

    //        Console.ReadLine();
    //    }
    //}


    //插入排序
    //public class InsertionSorter
    //{
    //    public void Sort(int[] list)
    //    {
    //        for (int i = 1; i < list.Length; i++)
    //        {
    //            int t = list[i];
    //            int j = i;
    //            while ((j > 0) && (list[j - 1] > t))
    //            {
    //                list[j] = list[j - 1];
    //                --j;
    //            }
    //            list[j] = t;
    //        }


    //    }
    //}
    //public class MainClass
    //{
    //    public static void Main()
    //    {
    //        int[] iArrary = new int[] { 1, 13, 3, 6, 10, 55, 98, 2, 87, 12, 34, 75, 33, 47 };
    //        InsertionSorter ii = new InsertionSorter();
    //        ii.Sort(iArrary);
    //        for (int m = 0; m < iArrary.Length; m++)
    //        {
    //            Console.Write("{0}", iArrary[m]);
    //        }
    //        Console.WriteLine();
    //        Console.ReadLine();
    //    }
    //}

 


    //希尔排序
    //public class ShellSorter
    //{
    //    public void Sort(int[] list)
    //    {
    //        int inc;
    //        for (inc = 1; inc <= list.Length / 9; inc = 3 * inc + 1) ;
    //        for (; inc > 0; inc /= 3)
    //        {
    //            for (int i = inc + 1; i <= list.Length; i += inc)
    //            {
    //                int t = list[i - 1];
    //                int j = i;
    //                while ((j > inc) && (list[j - inc - 1] > t))
    //                {
    //                    list[j - 1] = list[j - inc - 1];
    //                    j -= inc;
    //                }
    //                list[j - 1] = t;
    //            }
    //        }
    //    }
    //}
    //public class MainClass
    //{
    //    public static void Main()
    //    {
    //        int[] iArrary = new int[] { 1, 5, 13, 6, 10, 55, 99, 2, 87, 12, 34, 75, 33, 47 };
    //        ShellSorter sh = new ShellSorter();
    //        sh.Sort(iArrary);
    //        for (int m = 0; m < iArrary.Length; m++)
    //        {
    //            Console.Write("{0} ", iArrary[m]);
    //        }
    //        Console.WriteLine();
    //        Console.ReadLine();
    //    }
    //}


}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值