45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 电脑教程 > 阅读资讯:C#实现的基本算法的详细介绍

C#实现的基本算法的详细介绍

2016-08-31 19:24:45 来源:www.45fan.com 【

C#实现的基本算法的详细介绍

using System

namespace BubbleSorter
{
public class BubbleSorter
{
public void Sort
int [] list
{
int i,j,temp

bool done=false
j=1
while((jlist.Length&&!done))
{
done=true

fori=0ilist.Length-ji++
{
If
list[i]list[i+1]
{
done=false

temp=list[i]
list[i]=list[i+1]
list[i+1]=temp
}
}
j++

}

}

}

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}

BubbleSorter sh=new BubbleSorter();
sh.SortiArrary);
forint m=0miArrary.Lengthm++
Console.Write"{0} ",iArrary[m]);
Console.WriteLine();
}
}

}

选择排序
本人用了C#开发出选择排序算法。希望能为C#语言的学习者带来一些益处。不要忘了,学语言要花大力气学数据结构和算法。


using System

namespace SelectionSorter
{
public class SelectionSorter
{
private int min

public void Sortint [] list
{
for
int i=0ilist.Length-1i++
{
min=i

forint j=i+1jlist.Lengthj++
{
if
list[j]list[min]
min=j
}
int t=list[min]

list[min]=list[i]
list[i]=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}

SelectionSorter ss=new SelectionSorter();
ss.SortiArrary);
forint m=0miArrary.Lengthm++
Console.Write"{0} ",iArrary[m]);
Console.WriteLine();


}
}
}

插入排序

插入排序算法。对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。


using System


namespace InsertionSorter
{
public class InsertionSorter
{
public void Sort
int [] list
{
for
int i=1ilist.Lengthi++
{
int t=list[i]

int j=i
while((j0&&list[j-1]t))
{
list[j]=list[j-1]

--j
}
list[j]=t

}


}
}
public class MainClass
{
public static void Main
()
{
int[] iArrary=new int[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47}

InsertionSorter ii=new InsertionSorter();
ii.SortiArrary);
forint m=0miArrary.Lengthm++
Console.Write"{0}",iArrary[m]);
Console.WriteLine();
}
}
}

希尔排序

希尔排序是将组分段,进行插入排序. 对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。


using System


namespace ShellSorter
{
public class ShellSorter
{
public void Sort
int [] list
{
int inc

forinc=1inc=list.Length/9inc=3*inc+1);
for(;inc0inc/=3
{
for
int i=inc+1i=list.Lengthi+=inc
{
int t=list[i-1]

int j=i
while((jinc&&list[j-inc-1]t))
{


本文地址:http://www.45fan.com/dnjc/70439.html
Tags: 实现 算法 基本
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部