博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
选择排序
阅读量:6337 次
发布时间:2019-06-22

本文共 1425 字,大约阅读时间需要 4 分钟。

选择排序

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。

思想很简单:在数组中搜索最小的数和第一个交换位置,第二个最小的值和第二个位置交换位置,依次类推

如果你觉得有困难,就先写一个依次找到小数,第二个最小数得程序,然后想办法找到这些数位置,最后再去实现位置得放置问题

代码实现

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace SelectSort{    class Program    {        static void Main(string[] args)        {            int[] arr = new int[] { 5, 1, 7, 2, 4, 9, 3 };            Console.WriteLine("排序之前:");            foreach (int i in arr)            {                Console.Write(i.ToString() + " ");            }            Console.WriteLine();            int min_index;//记录最小数的下标            int tmp;//用于值交换            for (int i =0;i
arr[j]) { min_index = j;//寻找数组中值最小的那个位置 } }//一轮循环后,找到最小的值得位置是min_index,最小值应该放在第一位 tmp = arr[i];//位置腾出来 arr[i] = arr[min_index];//将小得那个值放上去 arr[min_index] = tmp; //其实就是在数组中搜索最小得和第一个交换位置,第二个最小得值和第二个位置交换位置,依次类推 } Console.WriteLine("排序之后的结果:"); foreach (int i in arr) { Console.Write(i.ToString() + " "); } Console.WriteLine(); } }}

转载于:https://www.cnblogs.com/ssjt/articles/10122947.html

你可能感兴趣的文章
Zabbix配置文件说明
查看>>
java生成唯一数字
查看>>
我的友情链接
查看>>
DebianLNMP加强版一键安装包Debian6配置Nginx PHP5.3 MySQL最快最新
查看>>
Showmodal与Show的区别
查看>>
lucene4.2自带demo
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Spinrg WebFlux中Cookie的读写
查看>>
简单的spring mvc 异步登陆验证
查看>>
Ubuntu系统常用配置
查看>>
我的友情链接
查看>>
数据库知识
查看>>
iOS UITextField相关
查看>>
进程的基本状态
查看>>
Package gp in the OpenCASCADE
查看>>
Android 工具 - Lint
查看>>
老李分享:loadrunner 的86401错误
查看>>
open***安装和配置
查看>>