基於php實現隨機合併陣列並排序 原排序

2022-10-06 09:57:10 字數 897 閱讀 9556

最近做了乙個專案,其中有這樣乙個需求要實現,原有帖子列表a,現在需要在a中推廣新業務b,那麼需要在a列表中zlmnt1:1混合b中的資料,隨機混合,但是需要保持a和b兩列原來的資料排序,具體詳情請看下文。

原理獲知總共元素數量n;

for迴圈n次,取隨機數;

根據隨機數依次從頭獲取a或b的值,推入新陣列中;

**://隨機合併兩個陣列元素,保持原有資料的排序不變(即各個陣列的元素在合併後的陣列中排序與自身原來一致)

function shufflemergearray() else

} return $mergearray;

}示例:合併前的陣列:

$arrawww.cppcns.comy1 = array(1, 2, 3, 4);

$array2 = array('a', 'b', 'c', 'd', 'e');

合併後的資料:

$mergearray = array (

0 => 'a',

1 => 1,

2 => 'b',

3 => 2,

4 => 'c',

5 => 'd',

6 => 3,

7 => 4,

8 => 'e',

)php陣列隨機排序

<?php $array = array('a','2','3','4','5','6',程式設計客棧'7','8'程式設計客棧,'9','10','j','q','k');

shuffle($array); //隨機排序陣列

print_r($array); //輸出陣列

?>

本文標題: 基於php實現隨機合併陣列並排序(原排序)

本文位址:

php實現陣列的合併

最近做乙個報表,要求若某幾項相同就合併這幾行,並將數字項相加顯示。首先考慮遍歷陣列,拿出陣列的最後一項跟其它項比較,若符合條件則做合併操作並刪除該項。但是實際執行,發現執行3次後就不執行了,而這時的陣列長度是6.一直沒搞懂為什麼不繼續執行了。陣列是採用 引用刪除的,刪除項確影響到了原陣列的。後來想到...

合併排序實現

code include using namespace std 合併兩個有序的子陣列 輸入 整數陣列a,下標p,q,r,元素個數m 其中a p a q 和a q 1 a r 已按遞增順序排序 輸出 按遞增順序排序的子陣列a p a r void merge int a,int p,int q,in...

合併排序陣列

合併兩個排序的整數陣列a和b變成乙個新的陣列。樣例給出a 1,2,3,4 b 2,4,5,6 返回 1,2,2,3,4,4,5,6 挑戰 你能否優化你的演算法,如果其中乙個陣列很大而另乙個陣列很小?class solution param a and b sorted integer array a...