C#算法----(四)希尔排序
2010-12-14 14:06
453 查看
using System;
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,3,6,10,55,9,2,87,12,34,75,33,47};
ShellSorter sh=new ShellSorter();
sh.Sort(iArrary);
for(int m=0;m<=13;m++)
Console.WriteLine("{0}",iArrary[m]);
}
}
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,3,6,10,55,9,2,87,12,34,75,33,47};
ShellSorter sh=new ShellSorter();
sh.Sort(iArrary);
for(int m=0;m<=13;m++)
Console.WriteLine("{0}",iArrary[m]);
}
}
相关文章推荐
- C#算法----(三)希尔排序(转载)
- C#算法基础之希尔排序
- 【C#算法】冒泡排序 选择排序 插入排序 希尔排序--转
- C#算法 希尔排序
- C#算法基础之插入排序
- 关于一道面试题,使用C#实现字符串反转算法
- 数据结构与算法——希尔排序
- 算法分析之希尔排序
- 小小c#算法题 - 11 - 二叉树的构造及先序遍历、中序遍历、后序遍历
- C#:字符串相似度算法( Levenshtein Distance算法)
- 算法 - 折半查找(C#)
- 【数据结构与算法】希尔排序
- C# MD5摘要算法、哈希算法
- 用C#写的数值概率算法求定积分的小程序
- 小小c#算法题 - 0 - 单循环冒泡排序
- 一种图象二值化的算法(C#)
- 希尔排序(shellsort)算法实现
- [翻译]C#数据结构与算法 – 前言&第一章
- 微信JS-SDK 权限签名算法 C#版
- 算法---希尔排序