亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求一個php最近的最小值算法跪求!

求一個php最近的最小值算法跪求!

冉冉說 2019-07-27 00:28:02
如果給出一個val=0.95,返回數組中最近的一個比val=0.95小的userid,是0.9。如果一個都沒有比0.95小的,那么返回,第一個val=0.95,對應的userid。大概意思是:總是取數組從頭開始最近的
查看完整描述

2 回答

?
蝴蝶不菲

TA貢獻1810條經驗 獲得超4個贊

$a=array(
array('userid'=>3,'val'=>0.95),
array('userid'=>1,'val'=>0.95),
array('userid'=>2,'val'=>0.95),
array('userid'=>5,'val'=>0.95),
array('userid'=>8,'val'=>0.95)
);
$x=0.9;
$count=count($a);
$b=[];
foreach($aas$v){
$arr2['val']=abs($x-$v['val']);
$arr2['userid']=$v['userid'];
$b[]=$arr2;
//print_r($v['val']);
}
$min=min($b);
print_r($min);
還差點,就對了。
                            
查看完整回答
反對 回復 2019-07-27
?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

$a=[
['userid'=>3,'val'=>0.95],
['userid'=>1,'val'=>0.95],
['userid'=>2,'val'=>0.9],
['userid'=>5,'val'=>0.95],
['userid'=>8,'val'=>0.95]
];
$x=0.9;
$b1=[];
$b2=[];
foreach($aas$v){
if($v['val']<$x&&!count($b1)){
$b1=$v;
}
if($v['val']===$x&&!count($b2)){
$b2=$v;
}
}
$b=$b1?:$b2;
                            
查看完整回答
反對 回復 2019-07-27
  • 2 回答
  • 0 關注
  • 332 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號