您好,欢迎访问一九零五行业门户网

排序算法测试程序入口

排序算法测试程序入口
using system; using system.collections.generic; using system.linq; using system.text; using system.collections; using system.diagnostics; namespace sort { class program { static void main(string[] args) { //test(5); efficiencytest(100000,10,"bubblesorter"); } //<生成随机数generaterandomnumber> public static list<int> generaterandomnumber(int length) { list<int> newrandom = new list<int>(); random rd = new random(); for (int i = 0; i < length; i++) { newrandom.add(rd.next()); } return newrandom; } //测试排序算法的正确性 private static void test(int n) { int[] de = generaterandomnumber(n).toarray(); console.writeline("排序前:"); foreach (int dee in de) { console.writeline(dee); } //int[] d = mergesorter.sort(de); //int[] d=heapsorter.sort(de); //int[] d = shellsorter.sort(de); //int[] d = insertsorter.sort(de); //int[] d = selectsorter.sort(de); //int[] d = cocktailsorter.sort(de); int[] d = bubblesorter.sort(de); console.writeline("排序后:"); foreach (int dee in d) { console.writeline(dee); } //console.readkey(); } //测试各个排序算法效率 //调用name函数排序i个数j次 private static void efficiencytest(int i,int j,string name) { double averagetime = 0; ; string cname = null; for (int n = 0; n < j;n++) { int[] de = generaterandomnumber(i).toarray(); stopwatch stopwatch = new stopwatch(); stopwatch.start(); datetime datestart = datetime.now; switch(name) { case "mergesorter": mergesorter.sort(de); cname = "mergesorter"; break; case "heapsorter": heapsorter.sort(de); cname = "heapsorter"; break; case "shellsorter": shellsorter.sort(de); cname = "shellsorter"; break; case "insertsorter": insertsorter.sort(de); cname = "insertsorter"; break; case "selectsorter": selectsorter.sort(de); cname = "selectsorter"; break; case "cocktailsorter": cocktailsorter.sort(de); cname = "cocktailsorter"; break; case "bubblesorter": bubblesorter.sort(de); cname = "bubblesorter"; break; case "quicksorter": quicksorter.sort(de); cname = "quicksorter"; break; } stopwatch.stop(); averagetime = (datetime.now - datestart).totalmilliseconds; } double span = averagetime / j; console.writeline(cname + "排序" + i + "个数" + j + "次所用平均时间为:" + span + " 毫秒"); console.readkey(); } } }
以上就是 排序算法测试程序入口的内容。
其它类似信息

推荐信息