php二维数数组二分查找
/** * 二维数数组二分查找, 查找成功返回数组下标,失败返回-1 * @param array $array 数组数据 * @param string $key 查找的键 * @param string $queryString 查询的字符串 * @return int */ function bsearch($array, $key, $queryString) { $low = 0; $high = count($array); while ($low <= $high) { $mid = floor(($low + $high) / 2); if (strcmp($array[$mid][$key], $queryString) === 0) { return $mid; } else if ($array[$mid][$key] > $queryString) { $high = $mid - 1; } else { $low = $mid + 1; } } return -1; }
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: php查找某个值是否存在于多维数组中
- 下一篇: 二维数组中获取某个KEY的集合