测试文件中的时间是怎么算的?

来源:19-2 课程总结

脑子笨学不会

2019-03-28

我写了一个堆排序算法,然后写了测试,在测试代码中我用下面这个循环来检测算法排好的数组是否正确,那运行这个循环的时间算在golang的test所花费的时间里吗?还是test时间只计算排序算法进行排序花费了多少时间?如果下面用来检测的循环也算在test时间里,那结果就是按test结果的时间复杂度依然是O(n^2)?
for m := 1; m <len(sort); m++{
for n := m +1; n <len(sort); n++ {
if sort[m] < sort[n] {
t.Errorf(“wrone”)
}
}
}

写回答

1回答

ccmouse

2019-03-31

对的,你这个检测是O(n^2)的,所以最后出来的时间也是O(n^2)。

我们可以使用testing.B里面的StartTimer/StopTimer来控制计时。

0
1
脑子笨学不会
非常感谢!谢谢老师
2019-03-31
共1条回复

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1909 问题

查看课程