国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

解析php二分法查找數(shù)組是否包含某一元素

2024-05-04 23:07:32
字體:
供稿:網(wǎng)友
二分法查找數(shù)組是否包含某一元素,兼容正反序,代碼實(shí)現(xiàn):

復(fù)制代碼 代碼如下:


<?php

$searchValue = (int)$_GET['key'];

function search(array $array, $value)
{
$max = count($array)-1;
$min = 0;
$isAscSort = $array[$min] < $array[$max];

while (TRUE) {
$sum = $min+$max;
$midKey = (int)($sum%2 == 1 ? ceil($sum/2) : $sum/2);

if ($max < $min) {
return -1;
} else if ($value == $array[$midKey]) {
return 1;
} else if ($value > $array[$midKey]) {
$isAscSort ? $min = $midKey+1 : $max = $midKey-1;
} else if ($value < $array[$midKey]) {
$isAscSort ? $max = $midKey-1 : $min = $midKey+1;
}
}
}

$array = array(
'4', '5', '7', '8', '9', '10', '11', '12'
);
// 正序
echo search($array, $searchValue);

// 逆序
rsort($array);
echo search($array, $searchValue);


這個之前搜過,看過百度百科的例子(Java的實(shí)現(xiàn)),還有一些其他技術(shù)宅寫的Code,都有問題,根本就沒實(shí)現(xiàn),這些人不測試就放出來誤導(dǎo)人,大家可以去搜搜看下,昨天閑來無事就自己寫一個分享給大家。
這個沒考慮非順序鍵的數(shù)組,主要是方法,如果需要大家可以自己擴(kuò)展下。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 穆棱市| 辽阳市| 台东市| 青田县| 东明县| 奈曼旗| 仁寿县| 晋宁县| 宁强县| 丰台区| 荔浦县| 吉首市| 徐汇区| 西城区| 年辖:市辖区| 平顶山市| 宁阳县| 临猗县| 南召县| 邹城市| 嘉义县| 河曲县| 德州市| 罗江县| 绿春县| 乌什县| 措勤县| 焉耆| 鄂伦春自治旗| 丹东市| 托里县| 石门县| 冀州市| 当雄县| 北流市| 兴城市| 阿拉善右旗| 襄垣县| 贵阳市| 密云县| 铜川市|