二进制搜索算法的平均性能?

http://en.wikipedia.org/wiki/Binary_search_algorithm#Average_performance

BinarySearch(int A[], int value, int low, int high) { int mid; if (high  value) return BinarySearch(A, value, low, mid-1); else if (A[mid] < value) return BinarySearch(A, value, mid+1, high); else return mid; } 

如果我试图找到的整数总是在数组中,有人可以帮我写一个程序,可以计算二进制搜索算法的平均性能吗?

编辑:我知道我可以通过实际运行程序和计算调用次数来做到这一点,但我在这里要做的是在不调用函数的情况下执行此操作。

edit2:KennyTM:这是时间复杂度,我正在尝试计算平均呼叫次数。 例如,在A [2]中找到整数的平均调用次数,它将是1.67(5/3)

你不需要“程序”。 您可以只计算对BinarySearch方法的调用次数。

您可以通过传递另一个参数(通过指针)或使用全局变量轻松地完成此操作。 在这种情况下 – 它是一个玩具 – 所以我可能会快速和肮脏的全球。