はじめに
「マスターになりたければ、このスキルを練習しなければなりません。」
優秀なプログラマーになるためには、データ構造とアルゴリズムは必修科目です。今日の Web プログラマは、多くのアルゴリズムがパッケージ化されており、特定の実装の詳細を気にする必要がないため、従来のアルゴリズムとデータ構造を比較的少数しか使用していません。たとえば、PHP のスタック操作 array_pop とスタック操作 array_push はすべて指定されています。基本的なアルゴリズムに関する研究はますます少なくなり、最終的には単なるツールの操り人形になってしまいました。
ですから、私は今でも、より多くのプログラマーが基礎から学び始めることをお勧めします。この記事では、スタックに慣れるために、私たちが最もよく知っているスタック操作について説明することから始めます。
スタックとは何ですか?
「後入れ先出し」というマントラは私が最も印象に残った文章であり、先生の説明の中でも最も印象に残った言葉でもあります。 定義: スタックは、挿入と削除を 1 つの位置のみに制限する線形リストであり、この位置は線形リストの最後であり、スタックの先頭と呼ばれます。 プロセス: 最初に入力されたデータはスタックの一番下にプッシュされ、最後のデータはスタックの一番上にあります。データを読み取る必要がある場合、データはスタックの一番上 (最後のデータ) からポップされます。が最初に読み上げられます)。
分析
定義と処理を通して、データ構造(赤色ロゴ)、アクション部分(青色ロゴ)、アクションルール(黄色ロゴ)を分析します。
成品の原材料をご覧ください データ:線形テーブル(配列構造の名前付きデータ)、end
(ENDという名前にはint構造体を使用、初期値は NULL -なぜなら、最初は線形テーブルには要素がないため、終端
indexがありません。継続的なデータ取得と追加により、この終端は変化する要素です)。
アクション(方法):push(プッシュ:ルール、線形テーブルの最後に配置)、pop(ポップ:ルール、最後から取り出され、終了位置が前に移動)。 エンコーディング
概要
上記はスタックの分析と理解のプロセスです。私はPHPコーダーなので、分析とコーディングにはPHPを使用しています。C 言語でコーディングしている場合は、配列で最大幅を指定する必要があります。これは、C 言語の配列は、PHP 配列とは異なり、それ自体で拡大することができず、初期幅が必要であるためです。
Chuanshanjia さんの貢献に感謝します。
上記では、PHP プログラマーが入門やインデックス作成などのデータ構造とアルゴリズムを学ぶための「スタック」について紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。