导读:本文介绍了使用C#实现希尔排序的方法
using System;namespace ShellSorter { 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(); } } }