直接选择排序

来源:互联网 发布:中国移动数据流量卡 编辑:程序博客网 时间:2024/06/11 14:25

直接选择排序算法也是一种比较简单的排序算法,它的基本思想是:在第i次选择操作中,通过n-i次键值间比较,从n-i+1个记录中选出键值最小的记录,并和第i(1 ≤ i ≤ n-1)个记录交换,算法简单描述如下:

private void btnSorting_Click(object sender, EventArgs e)        {            int[] num = new int[] { 45, 38, 66, 90, 88, 10, 25, 45 };            int min;            int temp;            //假设将数组中的数从小到大排序:            for (int i = 0; i < num .Length-1 ; i++) //每次循环,选择出一个最小键值            {                min = i;       //假设第i个记录键值最小                for (int j = i+1; j <=num .Length -1; j++)                {                    if (num[j]<num [min ])                    {                        min = j;     //记录最小键值的下标                    }                }                if (min != i )   //将第i个记录和当前最小键值的记录进行交换                {                    temp = num[i];                    num[i] = num[min];                    num[min] = temp;                }                //打印出每一趟的结果:                txtShow.Text = txtShow.Text + "\r\n" + "第" + (i + 1) + "趟排序结果:";                for (int k = 0; k < num .Length ; k++)                {                    txtShow.Text = txtShow.Text +"  " + num[k];                }            }        }




感谢您的阅读~



原创粉丝点击