我使用这两个函数从一个非常大的数据集中搜索查询。它们的速度在开始时大致相同,但当大小变得非常大时,二分查找数组的速度会稍微快一些。这是因为缓存效应吗?数组具有连续的。树有这样的吗?binary_array_search(int array[], int length, int query){
int left=0, right=length-1<
让我们考虑两个几乎相同的代码:for (int k=0;k<1000;k++) for (int i=0;i<600;i++) for (int j=0问题我的直觉
这是因为当一个程序试图访问一个单元时,首先包含这个单元格的整个块被移动到缓存中,然后通过缓存访问它。由于内存中的数组由连续单元表示,那么在第一种