目次
配列ソート例を実装するためのphp挿入ソートメソッド、配列例
ホームページ バックエンド開発 PHPチュートリアル 配列ソートを実装するための PHP 挿入ソートメソッドの例、配列例_PHP チュートリアル

配列ソートを実装するための PHP 挿入ソートメソッドの例、配列例_PHP チュートリアル

Jul 13, 2016 am 10:06 AM
php 二次元配列 選別 配列

配列ソート例を実装するためのphp挿入ソートメソッド、配列例

この記事の例では、PHP の挿入ソート方法を使用して配列ソートを実装する方法を説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです:

挿入ソート方法の基本的な考え方: 同じ例を使用して、引き続き $arr = array(2,6,3,9) を使用して、大きいものから小さいものへソートします。

実装原則: (実際に作成せずに) 順序付けされた配列 $arr = array(2) があると仮定します。$arr[1]=6 を使用してそれと比較し、6>2 の場合は $arr[0] を使用します。は位置 $arr[1] に移動され、6 は位置 $arr[0] に挿入されます。次に、$arr[2]=3 と $arr[1]=2, 3>2 が比較され、$arr[1]=2 は $arr[2] の位置、つまり元の $arr[3] に移動し続けます。 ]=3 $arr[1] の位置に挿入し、引き続き終了位置に 9 を挿入します。最終結果は (9,6,3,2) です。並べ替えは、count($arr)-1 の大きなループの後にも実行できます。

コードパターン分析:

最初の大きなサイクル: $[1] と $[0] の比率;
2 番目の大きなサイクル: $[2] 対 $[1]、$[1] 対 $[0]; 3 番目の大きなサイクル: $[3] 対 $[2]、$[2] 対 $[1]、$[1] 対 $[0];
PHP コードは使いやすさを考慮して関数のカプセル化を使用しています

リーリー

コード実装分析:

最初の大きなサイクル:

$i=1 配列(2,6,3,9)

$j=1 6 と 2 の比率を実行します: $arr[1]=2;$arr[0]=6, get (6,2,3,9)


2 番目の大きなサイクル:

$i=2 配列(6,2,3,9)

$j=2 は 3 と 2 の比率を実行します。$arr[2]=2、$arr[1]=3 となり、(6,3,2,9) が得られます

$j--,$j=1 $arr[1] と $arr[0] の比率を実行: 条件が満たされません

3 番目のサイクル:

$i=3 配列(6,3,2,9)

$j=3 は 9 と 2 の比率を実行します。$arr[3]=2、$arr[2]=9 となり、(6,3,9,2) が得られます

$j--,$j=2 9と3の比率を実行すると、$arr[2]=3, $arr[1]=9となり、(6,9,3,2)が得られます
$j--,$j=1 は 9 と 6 の比率を実行します。$arr[1]=5、$arr[0]=9 となり、(9,6,3,2) が得られます

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

http://www.bkjia.com/PHPjc/959116.html

tru​​ehttp://www.bkjia.com/PHPjc/959116.html技術記事配列ソートを実装するPHP挿入ソートメソッドの例、配列例 この記事では、配列ソートを実装するPHP挿入ソートメソッドの方法について説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです:...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

CakePHP の日付と時刻

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

CakePHP プロジェクトの構成

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

CakePHP ファイルのアップロード

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

CakePHP ルーティング

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP について話し合う

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP クイックガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

See all articles