跳至内容

ArrayBinarySearch<T>

ArrayBinarySearch

使用IComparable接口,搜索升序一维数组指定值来比较元素。

template<typename T>
int ArrayBinarySearch(
   T&             array[],         // 用于搜索的数组
   const int      start_index,     // 索引起始点
   const int      count,           // 搜索范围
   T              value,           // 搜索值
   IComparer<T>*  comparer         // 比较接口
   );

参数

&array[]

[out] 要搜索的数组。

value

[in] 已搜索的值。

*comparer

[in] 接口用于比较元素。

start_index

[in] 搜索开始的索引起始点。

count

[in] 搜索范围长度。

返回值

返回找到元素的索引。如果搜索值未找到,它将返回最接近值的最小元素的索引。