我为标准二进制搜索算法编写了这段递归代码。我只是想知道何时将 +1 添加到比较计数器?下面的伪代码
Inputs A: Array of Data;
key:Data; L,R:Integer;
Variables m:Integer;
Returns m:Integer;
Begin
If R<L then return -1; fi
m:= (R+L)/2
if key = A[m] then return m; fi
if key > A[m] then
return binSearch(A,key,m+1,R);
Else
return binSearch(A,key,L,m-1);
fi
End
检查第一个 if 语句中的 L 和 R 算作比较吗?有点困惑。