PHP で配列ソートを実装する方法: クイック ソート、挿入ソート、マージ ソート アルゴリズム
php で配列をソートするには多くの方法があり、各配列のソートには独自の異なる原則があります。クイック ソート アルゴリズム、マージ ソート アルゴリズム、挿入ソート アルゴリズムの例を詳しく見てみましょう。
特殊な形状の配列の走査
次の配列内の数値の平均を求めます:
$arr1 = array( 1, 2, array(31, 32, 33), 4, array(51, 52, 53, array(541, 542, 543, 544) ), 6, array(71, 72, 73), ); $count = 0; //计数 $sum = GetArraySum($arr1); echo “\
クイック ソートアルゴリズム
原理の説明:
このような配列の場合: [5, 1,2, 6,7];
最初の項目を取り出し (そして使用します)それを中間配列として)、残りの項目を比較した後、それらは 2 つの配列に分割されます:
左の配列項目は中央の項目より小さく、右の配列項目は中央の項目より小さくありません。
左側の配列と右側の配列がすでに並べ替えられた配列である場合は、3 つをマージして最終結果を取得します。
左の配列と右の配列が並べ替えられた配列でない場合は、引き続きこの関数を再帰的に使用して、並べ替えられた配列を取得します。
概略図:
主要データ:
$arr1 = [5, 2, 1, 6,7]; / /原則を効果的に示すデータ 1
小: [2, 1]、大: [6, 7]、中: [5]
3 つの組み合わせ: [1 、2、5] , 6, 7];
$arr1 = [2, 1]; //原則を効果的に示すデータ 2
中央: [2]、左: [1] , []
特定のケース:
$arr1 = [5, 2, 4, 6, 1, 3]; $arr1 = [5, 2, 4, 6, 1, 3]; //$arr1 = [5, 3, 2, 8, 7]; echo “\
挿入ソート アルゴリズム
原則の説明:
このような配列の場合: [2 , 3, 4, 1];
ソートされた配列に特定の数値 n を挿入するには、
n の後に配列の項目を後ろから前に追加するだけです。比較では、 item が n より大きいことが判明した場合、
は item を 1 つ戻し、その後引き続き取り出して比較します。n より大きい場合は、1 つ戻します。以下同様です。 。
最終的にnより大きいものがなくなった場合は、後退時に空いた位置にnを入れます。
配列の場合、最初の項目は「すでにソートされた」配列と見なすことができ、
その後、2 番目の項目は上記の原則に従って「ソートされたものを挿入」できるため、前の 2 つの項目は
と並べ替えることができ、2 つの要素を含む「並べ替えられた配列」になります。これに続いて類推が続きます。
概略図:
原理データ:
$arr1 = [2, 3, 4, 1]; //詳しい説明原理のデータ 1
$arr1 = [2, 3, 1]; //原理を効果的に説明するデータ 2
$arr1 = [2, 1]; //原則を効果的に説明します Data 3
$arr1 = [1, 2]; //データ 3
原則を効果的に説明します:
$arr1 = [5, 2, 4, 6, 1, 3]; $arr1 = [2, 3, 4, 1]; $arr1 = [2, 4, 5, 6, 1, 3]; echo “\
マージ ソート アルゴリズム
原理の説明:
このような配列の場合: $arr1 = [1, 3, 5, 2, 4, 6]; それを 2 つに分割します: $a = [1 , 3, 5],
$b = [2, 4, 6];
ソートされた配列が 2 つある場合、2 つの配列に対して次の操作を実行すると、次の結果を得ることができます。 2 つの配列のソートされた「融合配列」:
配列 a の最初の項目 a1 を取り出し、次に配列 b の最初の項目 b1 を取り出し、a1 と b1 のサイズを比較します。
小さいもの (a1 とする) を新しい配列に入れ、対応する配列 a の最初の項目を削除します。
次に、対応する配列の最初の項目を取り出します (データだけではありません)。 )、その後、毎回 2 つの
のサイズを比較し続け、小さい方を新しい配列に入れ、次の「削除、取得、比較」を続けます。 。 。 。
最終結果として、新しい配列で新しい並べ替えられた配列を取得できます。
まだソートされていない配列の場合、再帰的に 2 つに分割されている限り、最終的には最短の配列 (1 つまたは 0 個のセルのみ) が得られます。この種の配列は自然にソートされます。注文。
回路図:
原理データ:
$arr1 = [1, 3, 5, 4, 6, 7, 8 ]; //原理を強く示すデータ 1
を真ん中から 2 つに分割 [ ]; [ 6, 7, 8]
[ 1, 3, 4, 5 , ]
$arr1 = [1, 3, 2, 4]; //原理を効果的に説明するデータ 2
デモケース:
#
$arr1 = [5, 2, 4, 6, 1, 3]; echo “\
php バブル ソート クイック ソート、php バブル ソート
php 配列ソート方法の共有 (バブル ソート、選択 並べ替え)
以上がPHP で配列ソートを実装する方法: クイック ソート、挿入ソート、マージ ソート アルゴリズムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











キー名を保持する PHP の高速配列ソート方法: ksort() 関数を使用してキーをソートします。ユーザー定義の比較関数を使用して並べ替えるには、uasort() 関数を使用します。実際のケース: ユーザー ID を保持しながら、ユーザー ID とスコアの配列をスコアごとに並べ替えるには、uasort() 関数とカスタム比較関数を使用できます。

JS 配列のソートを深く理解するには、sort() メソッドの原理とメカニズム、具体的なコード例が必要です はじめに: 配列のソートは、日常のフロントエンド開発作業で非常に一般的な操作の 1 つです。 JavaScript の配列ソート メソッド sort() は、最も一般的に使用される配列ソート メソッドの 1 つです。しかし、sort() メソッドの原理とメカニズムを本当に理解していますか?この記事では、JS 配列の並べ替えの原理とメカニズムを深く理解し、具体的なコード例を示します。 1.sort()メソッドの基本的な使い方

カスタム PHP 配列ソート アルゴリズムを作成するにはどうすればよいですか?バブルソート: 隣接する要素を比較および交換することによって配列をソートします。選択ソート: 毎回最小または最大の要素を選択し、現在の位置と入れ替えます。挿入ソート:ソートされた部分に要素を1つずつ挿入します。

PHP でキー名を保持しながら配列を値でソートする方法は、usort() 関数を使用して配列を値でソートすることです。無名関数を比較関数として usort() 関数に渡し、要素値の差を返します。 usort() は、キー名を変更せずに、匿名関数に従って配列をソートします。

PHP では、uasort() 関数を使用して、元のキー名を保持しながらカスタムの並べ替えルールに従って配列を並べ替えます。カスタム比較関数は、2 つの要素を入力として受け取り、整数を返す関数です。負の数値は前者が後者より小さいことを意味し、ゼロはそれらが等しいことを意味し、正の数値は前者が後者より大きいことを意味します。

PHP の asort() 関数は、配列を値でソートします。特定のコード例が必要です。PHP は、豊富な配列処理関数を備え、広く使用されているサーバー側スクリプト言語です。中でも、asort()関数は、配列を値に応じて並べ替えることができる非常に便利な関数です。この記事では、asort() 関数の使い方を詳しく紹介し、具体的なコード例を示します。 asort() 関数の機能は、キーと値の関連付けを維持しながら、配列を値の昇順に並べ替えることです。元の数値を変更することで行われます

PHP関数「sort」を使って配列を昇順に並べ替える PHPでは、組み込み関数を使って簡単に配列を並べ替えることができます。その中でもsort関数は最もよく使われる関数の一つで、配列を昇順に並べ替えることができます。この記事では、sort 関数の使用方法と対応するコード例を紹介します。ソート関数の構文は次のとおりです。sort(array&$array,int$sort_flags=SORT_REGULAR):boo

PHP で多次元配列のソートを最適化するためのヒント: ソート用のユーザー定義関数を作成する array_multisort() 関数を使用して、多次元キーの並べ替えを適用する 実際のケース: 配列のキーと値のペアによる製品のソート
