php排序陣列排序 php 陣列排序

2021-10-22 21:17:49 字數 1522 閱讀 6857

您現在的位置是:**首頁》php>>php

php 陣列排序

一:氣泡排序

基本思想

例:$arr = [1,-5,0];

$temp = 0;

//外層迴圈,只要確定排好n-1個數,則最後乙個數自然排好了

for($i=0;$i

//每次進行一次大迴圈時,最大數已經在最後了,則下次迴圈則不用再比較已經排好的數

for($j=0;$j

if($arr[$j]

$temp = $arr[$j];

$arr[$j] = $arr[$j+1];

$arr[$j+1] = $temp;

var_dump($arr);

二:選擇排序

基本思想

例:function selectsort(&$arr)

$temp=0;

for($i=0;$i

$minval = $arr[$i]; //假設$i就是最小值

$minindex = $i; //記錄認為最小值的小標

for($j=$i+1;$j

if($minval > $arr[$j]){

$minval = $arr[$j];

$minindex = $j;

$temp = $arr[$i];

$arr[$i] = $arr[$minindex];

$arr[$minindex] = $temp;

$arr = array(0,5,-1);

selectsort($arr);

三:插入排序

基本思想

例:function insertsort(&$arr)

//先預設下表為0這個數已經有序

for($i=1;$i

//insertval是準備插入的數

$insertval = $arr[$i];

//準備先和insertindex比較

$insertindex = $i-1;

while($insertindex>=0 && $insertval

//把較大的數後移

$arr[$insertindex+1] = $arr[$insertindex];

$insertindex--;

//插入(這時為$indexval找到適當的位置了)

php氣泡排序 陣列氣泡排序

又遇到排序問題,最簡單的氣泡排序,上學時候學過,結果很少用,最近又遇到了,記錄下 氣泡排序 需要時再反轉 dump array reverse new list 二維陣列的話根據陣列下元素對比就行 if new list i id new list i 1 id sort 函式用於對陣列單元從低到高...

912 排序陣列

今天的每日一題是排序,這是乙個入門問題。有多種解法,當然最簡單是直接呼叫sort方法進行排序,但是這對於練習並沒有什麼意義 題目鏈結 思路1 快排 每一次劃分pivot左邊小於pivot右邊大於pivot。遞迴劃分左邊,遞迴劃分右邊。思路2 歸併排序,先讓子串行有序,然後合併兩個有序陣列。流程 遞迴...

912 排序陣列

給你乙個整數陣列 nums,請你將該陣列公升序排列。示例 1 輸入 nums 5,2,3,1 輸出 1,2,3,5 示例 2 輸入 nums 5,1,1,2,0,0 輸出 0,0,1,1,2,5 1 nums.length 50000 50000 nums i 50000 排序的方法有很多種,本文採...