ホームページ 毎日のプログラミング PHPの知識 PHPで再帰的ソートを実装する方法

PHPで再帰的ソートを実装する方法

Sep 21, 2018 pm 04:33 PM


この記事では主に、PHP 再帰ソートPHP 再帰アルゴリズム の 3 つの実装方法を紹介します。

PHPで再帰的ソートを実装する方法

再帰アルゴリズムは、プログラマなら誰でもよく知っているはずです。なぜなら、再帰の概念は、PHP 言語であっても、Java などの他のプログラミング言語であっても、ほとんどのアルゴリズムの核心だからです。

PHP の初心者にとって、再帰アルゴリズムの実装原理は理解しにくいかもしれません。ただし、このアルゴリズムの原理を理解して習得していれば、再帰アルゴリズムを柔軟に使用して、無限分類などのさまざまな関数をプログラミングで実装できます。再帰は、初心者が最も習得する必要がある基本的なアルゴリズム スキルでもあります。

では、再帰とは正確には何でしょうか?

再帰は、実際には、関数自体が直接または間接的にそれ自体を呼び出すプログラミング メソッドです。これは、ループと非常によく似ていますが、再帰的です。 call 関数内に終了条件、つまり繰り返し実行処理を抜け出す条件がないと無限ループになってしまいます。

以下では、PHP 再帰アルゴリズム PHP 再帰ソート の 3 つの実装方法を、具体的なコード例を通して紹介します。

方法 1: 静的変数

<?php
function call(){
    static $i=1;
    echo  $i.&#39;<br>&#39;;
    $i++;
    if ($i<=10){
        call();
    }
}
call();
ログイン後にコピー

この方法では、主に static を使用して静的変数を定義し、再帰的並べ替えを実装します。上記のように、callメソッドと静的変数$iを定義しましたが、$i変数に判定を加えずに直接実行すると、当然ながら無限ループが発生します。

そこで、ここに if 条件判定文を追加します。最後に、ループ内で独自のメソッドを呼び出します。結果は次の図に示すようになります。

PHPで再帰的ソートを実装する方法

#図に示すように、静的変数を使用する効果は次のとおりです。再帰的なソートを実現します。

方法 2: グローバル変数

$i=1;
function call(){
    global $i;
    echo $i;
    $i++;
    if($i<=10){
        call();
    }
}
call();
ログイン後にコピー

この方法では、主にグローバルを使用してグローバル変数を定義し、PHP 再帰的並べ替えを実装します。上記と同様に、最初に $i 変数を定義し、次に call メソッドを作成します。このメソッドでは、$i がグローバル変数として定義され、ループ内で独自のメソッドを呼び出した最終結果は上記と同じになります。結果:

12345678910
ログイン後にコピー

方法 3: パラメータの参照渡し#

function call(&$i=1){
  echo $i.&#39;<br>&#39;;
  $i++;
  if($i<=10){
       call($i);
   }
}
call();
ログイン後にコピー
このメソッドを使用すると、PHP における参照渡しの概念を簡単に理解できます。変数を参照によって関数に渡すと、関数のパラメータの値を変更できるようになります。参照パラメータを使用して PHP 再帰的並べ替えを実装するのは、最も基本的で単純なアルゴリズムです。

注: 独自のメソッドを呼び出すときは、パラメーターを渡す必要があります。そうしないと、エラーが報告されます。

上記は、PHP の再帰アルゴリズム、つまり再帰ソートの 3 つの実装方法です。困っている人たちの役に立てば幸いです!

PHP についてさらに詳しく知りたい場合は、PHP 中国語 Web サイト

PHP ビデオ チュートリアル を参照してください。誰でも参照して学ぶことができます。


以上がPHPで再帰的ソートを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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