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

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

將此數組從最高到最低排序

將此數組從最高到最低排序

PHP
瀟瀟雨雨 2023-10-15 10:43:34
所以我做了一個先驗算法,這就是結果。這是我從中獲取該數組的代碼。$count = array_count_values($arrayCount);$array = [];foreach($count as $key => $value){    $confidence = ($value/$count_antecedent);    $support = ($value/$count_all_transactions);       $isi = [        $key=>$confidence*$support    ];    array_push($array,$isi);}return $array;我想將其從最高到最低排序,但同時保留密鑰。如果這個數組已排序,我需要的只是取 4 個最大的數字。它看起來像這樣(如果排序):  $i = 0; foreach($sortedArray as $key => $value){    if($i == 0){     $product1 == product::find($key);    }    else if($i == 1){     $product2 = product::find($key);    }    else if($i == 2){    $product3 = product::find($key);    }   else if($i == 3){    $product4 = product::find($key);   }   $i++; }
查看完整描述

2 回答

?
慕容森

TA貢獻1853條經驗 獲得超18個贊

使用arsort($array)功能。

這就是你所需要的。


查看完整回答
反對 回復 2023-10-15
?
隔江千里

TA貢獻1906條經驗 獲得超10個贊

因此,為了對數組進行排序,我需要使用 usort,其中每個數組中的鍵名稱應該相同。


所以我將 $isi 變量更改為


$isi = ["value"=>$confidence*$support,"key"=>$key];

然后使用這個 usort 函數對數組進行排序


usort($array,function($a,$b){

 return $a["value"] < $b["value"];

})

然后為了從數據庫中獲得 4 個最高的乘積,對代碼進行輕微的更改


  $i = 0;

 foreach($array as $key => $value){

    if($i == 0){

     $product1 = product::find($value['key']);

    }

    else if($i == 1){

     $product2 = product::find($value['key']);

    }

    else if($i == 2){

    $product3 = product::find($value['key']);

    }

   else if($i == 3){

    $product4 = product::find($value['key']);

   }

   $i++;

 }


查看完整回答
反對 回復 2023-10-15
  • 2 回答
  • 0 關注
  • 138 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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