[英]bubble sort multidimensional array php
我必須對二維數組進行排序
$items = array(
array(15, 16, 8, 1),
array(2, 3, 4, 7),
array(9, 11, 19, 6,)
);
用冒泡排序螞蟻得到這樣的東西
1,2,3,4
6,7,8,9
11,15,16,19
我找不到多個數組的冒泡排序。 你能幫助我嗎?
我試過這樣的事情,但它不起作用:
$iterations = 0;
for ($i = 0; $i < count($array); $i++)
{
$iterations++;
$hasSwap = false;
for ($j = 0; $j < count($array) - 1 - $i; $j++)
{
$iterations++;
if ($array[$j] > $array[$j + 1])
{
$hasSwap = true;
swap($array, $j, $j + 1);
}
}
if (!$hasSwap)
{
break;
}
}
var_dump($iterations);
print_r($array);
您將三個數組視為一個數組。 所以
可能有人會對這個決定有用。 在這里,有必要根據每個元素中'COUNT'
的值,按氣泡對元素進行排序。
$fruits
(
[0] => Array
(
[NAME] => Banana
[COUNT] => 7
)
[1] => Array
(
[NAME] => Orange
[COUNT] => 2
)
[2] => Array
(
[NAME] => Apple
[COUNT] => 24
)
)
usort($fruits, function($a, $b)
{
if($a['COUNT'] > $b['COUNT'])
{
return -1;
}
if($a['COUNT'] < $b['COUNT'])
{
return 1;
}
return 0;
});
更多示例和使用詳細說明: usort
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.