重温数据结构与算法(1) 构建自己的时间测试类

来源:互联网 发布:笔趣阁软件下载 编辑:程序博客网 时间:2024/05/17 03:21
本文总结了使用基准法测试来测试运行一个程序所使用的时间,或者说是测试程序中数据结构和算法的性能。
  代码如下:
复制代码
namespace TimingTestDemo1{    //自定义计时类    public class Timing    {         //私有字段        TimeSpan duration;        //构造函数,初始化字段        public Timing()        {            duration = new TimeSpan(0);        }        //开始计时        public void StartTime()        {            GC.Collect();//强制执行垃圾回收            GC.WaitForPendingFinalizers();//挂起当前线程,直到处理终结器队列的线程清空该队列为止        }        //结束计时        public void StopTime()        {            duration = Process.GetCurrentProcess().TotalProcessorTime;        }        public TimeSpan Result()        {            return duration;        }    }    class Program    {        static void Main(string[] args)        {            //声明和初始化数组            int[] nums=new int[100000];            BuildArray(nums);            Timing tObj = new Timing();            //计时开始            tObj.StartTime();            DisplayNums(nums);            //计时结束            tObj.StopTime();            Console.WriteLine("\nExpend time: "+tObj.Result().TotalSeconds+"s");            Console.ReadKey();        }        private static void BuildArray(int[] arr)        {            for (int i = 0; i <= arr.Length - 1; i++)            {                arr[i] = i;            }        }        private static void DisplayNums(int[] arr)        {            for (int i = 0; i <= arr.GetUpperBound(0); i++)            {                Console.Write(arr[i]+" ");            }        }    }}
复制代码

程序输出结果为:

以上就是自己总结的程序性能测试类,可以把它用在后续的各种数据结构与算法中。

0 0