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"); } // public static List GenerateRandomNumber(int Length) { List newRandom = new List(); 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(); } }}
以上就是 排序算法测试程序入口的内容,更多相关内容请关注PHP中文网(www.php.cn)!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1432172.html
微信扫一扫
支付宝扫一扫