我正在计时执行三种不同类型的搜索(顺序、递归二进制和迭代二进制)需要多长时间。我有这些,它确实会迭代并完成搜索。我的问题是,当我对它们全部计时时,我每次都得到 0,即使我创建了一个 100,000 的数组,并且我让它搜索不在数组中的东西。如果我在搜索中设置一个断点,它显然会使时间变长,并且它给了我一个可以使用的合理时间。但否则它总是 0。这是我的代码,所有三个搜索计时器都是相似的。
clock_t recStart = clock();
mySearch.recursiveSearch(SEARCH_INT);
clock_t recEnd = clock();
clock_t recDiff = recEnd - recStart;
double recClockTime = (double)recDiff/(double)CLOCKS_PER_SEC;
cout << recClockTime << endl;
cout << CLOCKS_PER_SEC << endl;
cout << recClockTime << endl;
对于最后两个,我得到1000
和0
。
我在这里做错了吗?还是在我的搜索对象中?