c#计算一段代码的时间复杂度
用.net内置类监控程序的运行时间,代码如下:
1 public class Timing 2 { 3 TimeSpan duration; 4 public Timing() //和那个计时类还一样,想要弄明白 先要弄明白 进程 线程 挂起 三个名词 5 { 6 duration = new TimeSpan(0); 7 } 8 public void stopTime()// 9 { 10 duration = Process.GetCurrentProcess().TotalProcessorTime; 11 } 12 public void startTime() 13 { 14 GC.Collect(); 15 GC.WaitForPendingFinalizers(); 16 } 17 public TimeSpan Result() 18 { 19 return duration; 20 } 21 22 }
在mian方法中程序的开始调用 tobj.startTime(); 结束处调用 tobj.stopTime();时间的输出用tobj.Result().TotalSeconds更精确
落霞与孤鹜齐飞,秋水共长天一色。