ホームページ  >  記事  >  php教程  >  PHPのデータ構造とアルゴリズム「スタック」

PHPのデータ構造とアルゴリズム「スタック」

WBOY
WBOYオリジナル
2016-06-21 08:51:43818ブラウズ

はじめに

「マスターになりたければ、このスキルを練習しなければなりません。」

優秀なプログラマーになるためには、データ構造とアルゴリズムは必修科目です。今日の Web プログラマは、多くのアルゴリズムがパッケージ化されており、特定の実装の詳細を気にする必要がないため、従来のアルゴリズムとデータ構造を比較的少数しか使用していません。たとえば、PHP のスタック操作 array_pop とスタック操作 array_push はすべて指定されています。基本的なアルゴリズムに関する研究はますます少なくなり、最終的には単なるツールの操り人形になってしまいました。

したがって、私は今でも、より多くのプログラマーが基礎から学び始めることをお勧めします。この記事では、スタックに慣れるために、最もよく知られているスタック操作から始めます。

スタックとは何ですか?

「後入れ先出し」というマントラは私が最も印象に残った文章であり、先生の説明の中でも最も印象に残った言葉です。

定義: スタックは、挿入と削除を 1 つの位置のみに制限する線形リストであり、この位置は線形リストの終わりであり、スタックの先頭と呼ばれます。

プロセス: 最初に入力されたデータはスタックの一番下にプッシュされ、最後のデータはスタックの一番上にあります。データを読み取る必要がある場合、データはスタックの一番上からポップされます (最後のデータが読み取られます)。最初に出ます)。

分析

定義とプロセスを通じて、データ構造(赤でマーク)、アクション部分(青でマーク)、およびアクションのルール(黄色でマーク)を分析します。

をご覧ください。

材料

データ: 線形テーブル (配列構造で保存され、名前付きデータ)、終了インデックス (int 構造で保存され、end という名前が付けられます。初期値は null - 先頭の線形テーブルには要素がないため、そのようなものはありません)データは常に取得および追加されるため、この終端は変化する要素です)。

アクション(メソッド):プッシュ(プッシュ:ルール、線形テーブルの最後に配置)、ポップ(ポップ:ルール、最後から取り出され、終了位置が前に移動)。

コーディング

ランニング結果

概要

上記はスタックの分析と理解のプロセスです。私は PHP コーダーなので、分析とコーディングには PHP を使用します。

C 言語でコーディングしている場合は、配列で最大幅を指定する必要があります。これは、PHP 配列とは異なり、C 言語の配列は自動的に大きくなる可能性があり、初期幅が必要であるためです。

原文: http://www.cnblogs.com/baochuan/archive/2012/06/02/2530386.html



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