`
izuoyan
  • 浏览: 8916509 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C#几种常用的排序算法

阅读更多

C#几种常用的排序算法:
1 冒泡排序法

1冒泡排序法#region冒泡排序法
2publicvoidSort(int[]list)
3{
4longbegintime=System.DateTime.Now.Second*1000+System.DateTime.Now.Millisecond;
5WriteLine(begintime);
6intj,temp;
7j=1;
8while((j<list.Length))
9{
10for(inti=0;i<list.Length-j;i++)
11{
12if(list[i]<list[i+1])
13{
14temp=list[i];
15list[i]=list[i+1];
16list[i+1]=temp;
17}

18}

19j++;
20}

21longendtime=System.DateTime.Now.Second*1000+System.DateTime.Now.Millisecond;
22WriteLine(endtime);
23WriteLine(endtime-begintime);
24}

25#endregion

2 选择排序法

1选择排序法#region选择排序法
2publicvoidSortChoice(int[]list)
3{
4longbegintime=System.DateTime.Now.Millisecond;
5intmin;
6for(inti=0;i<list.Length-1;i++)
7{
8min=i;
9for(intj=i+1;j<list.Length;j++)
10{
11if(list[j]<list[min])
12min=j;
13}

14intt=list[min];
15list[min]=list[i];
16list[i]=t;
17}

18longendtime=System.DateTime.Now.Millisecond;
19WriteLine(begintime);
20WriteLine(endtime);
21WriteLine(endtime-begintime);
22}

23#endregion


3 插入排序法

1插入排序法#region插入排序法
2publicvoidSortInsert(int[]list)
3{
4for(inti=1;i<list.Length;i++)
5{
6intt=list[i];
7intj=i;
8while((j>0)&&(list[j-1]<t))
9{
10list[j]=list[j-1];
11--j;
12}

13list[j]=t;
14}

15}

16#endregion


4 希尔排序法

1希尔排序法#region希尔排序法
2publicvoidSortShell(int[]list)
3{
4intinc;
5for(inc=1;inc<=list.Length/9;inc=3*inc+1);
6for(;inc>0;inc/=3)
7{
8for(inti=inc+1;i<=list.Length;i+=inc)
9{
10intt=list[i-1];
11intj=i;
12while((j>inc)&&(list[j-inc-1]>t))
13{
14list[j-1]=list[j-inc-1];
15j-=inc;
16}

17list[j-1]=t;
18}

19}

20}

21#endregion
分享到:
评论

相关推荐

    C#常用的排序算法实例代码

    C#中常用排序算法的一些实例代码,程序还提供了一个演示窗口,以命令提示符的方式显示算法结果,让人一目了然就能看到算法的结果,比较适合c#初学者。...通过这个小实例你会对这几种常用的排序算法有一些理解。

    几种经典排序算法C#实现

    用C#实现的几种典型排序算法,包括二叉树排序、快速排序、希尔排序、插入排序、冒泡排序、选择排序等,代码简单易懂,适合初学者,供学习教育用

    c#实现几种排序算法,并输出关键字比较次数和交换次数

    6个排序的算法...折腾我挺久的 快速排序是参照了另外一个人的程序,而堆排序也是...堆排序我自己都看不怎么懂 主要也是关键字比较次数和交换次数吧.也不知道对不对 有错误还希望各位指出,谢谢!

    Visual C# 诠释常用排序算法

    前段时间因为项目需要,做了个用来对数组排序的类,顺便把以前学过的几种排序算法用C#实现一下。用C#的一些机制来诠释了一下算法的是实现。在阅读本之前,需要一些对C#的有些基本的了解,了解方法参数中out ,ref的...

    c#的几种典型算法

    c#的几种典型算法:插入排序、乘法表、迭代、公约、回文、计算器等

    几种排序算法的时间耗费比较

    本程序主要演示了归并,插入,快排等几种排序算法在各种不同数据量的情况下的算法效率,适合编程新手对排序算法的认识和学习

    C#实现的几个排序算法

    这个程序里面写了好几种排序算法,是用C#实现的。包括插入排序;选择排序;堆排序;快速排序;自底向上排序;合并排序。

    基于c#算法的几种排序(冒泡,快速等)

    适合初学者的几种排序(冒泡,快速等),用vs等打开

    C#几种排序算法

    作者:Sabine 【导读】本文介绍了C#的四种排序算法:冒泡排序、选择排序、插入排序和希尔排序 冒泡排序 using System; namespace BubbleSorter { public class BubbleSorter { public void Sort(int ...

    C#的几种排序法介绍了“冒泡”,“选择”,等

    举了几种例子,是用代码写的,很好看懂(注:转载于)

    C#排序算法冒泡 选择 插入 希尔

    关于对C#排序的几种算法包括冒泡,选择,插入,希尔排序方法

    C#排序算法的比较分析

    主要介绍了C#排序算法的比较,实例分析几种比较常见的算法,并对其时间复杂度与稳定性进行了详细的分析,需要的朋友可以参考下

    逐步讲解快速排序算法及C#版的实现示例

    快速排序在时间复杂度同为O(N*logN)的几种排序方法中效率较高,因而比较常用,接下来这里就来逐步讲解快速排序算法及C#版的实现示例

    C#代码实现扑克牌排序的几种方式

    扑克牌游戏,总是能用到很多的手牌排序,总结了几种方式供参考,顺便记录一下方便以后使用。 我做的这个是由(1-13:黑桃A-K || 14 – 26:红桃 || 27 – 39:梅花 || 39 – 52 : 方片 || 53.54:小王.大王)表示的一...

    C/C++常用算法手册.秦姣华(有详细书签).rar

    2.1.5 数据结构的几种存储方式 18 2.1.6 数据类型 19 2.1.7 常用的数据结构 20 2.1.8 选择合适的数据结构解决实际问题 21 2.2 线性表 21 2.2.1 什么是线性表 21 2.2.2 线性表的基本运算 22 2.3 顺序表结构 ...

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    4.2 常用数组排序算法 117 实例099 使用选择排序法对一维数组进行排序 117 实例100 使用冒泡排序法对一维数组进行排序 118 实例101 使用快速排序法对一维数组进行排序 119 实例102 使用直接插入法对一维数组进行排序...

    多边形拓扑关系算法C++程序

    多边形之间的拓扑关系,解决多边形之间几种常见的拓扑关系,非常实用

    C#微软培训资料

    第十一章 方 法 .124 11.1 方法的声明.124 11.2 方法中的参数.125 11.3 静态和非静态的方法.129 11.4 方法的重载.130 11.5 操作符重载.134 11.6 小 结.137 第十二章 域 和 属 性 .139 12.1 域 .139 ...

Global site tag (gtag.js) - Google Analytics