ホームページ >バックエンド開発 >PHPチュートリアル >PHP リンク リスト データ構造 (単一リンク リスト)_php の例についての簡単な説明

PHP リンク リスト データ構造 (単一リンク リスト)_php の例についての簡単な説明

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-16 08:41:01926ブラウズ

リンク リスト: は順序付きリストですが、メモリ内に分散して保存されます。リンク リストは、Joseph の問題、並べ替え問題、検索問題などの問題を解決するために使用できます。一般化されたリスト

一方向リンク リスト、双方向リンク リスト、循環リンク リスト

PHPの最下位層はCです。プログラムが実行されると、メモリは5つの領域(ヒープ領域、スタック領域、グローバル領域、定数領域、コード領域)に分割されます

規定: 基本的なデータ型。通常はスタック領域に配置されます

オブジェクトなどの複合データ型はヒープ領域に配置されます


クラスヒーローを定義します

メンバー属性ランキング $no を定義

メンバー属性名 $name を定義します

メンバー属性のニックネーム $nickname を定義

次の Hero オブジェクトを指す参照であるメンバー属性 $next を定義します

コンストラクターを定義し、パラメーターを渡します: $no、$name、$nickname


ヘッドを作成します。これは単なるヘッダーであり、データは配置されません

$head オブジェクト、new Hero() を取得します

最初のヒーロー オブジェクト $hero、新しいヒーロー(1,"Song Jiang","Timely Rain") を取得します

2 つのオブジェクトを接続します、$head->next=$hero

2 番目のヒーロー オブジェクト $hero2、新しいヒーロー(2,"Lu Junyi","Yu Qilin") を取得します

2 つのオブジェクトを接続します、$hero->next=$hero2


リンクされたリストを参照する

関数 showHeros()、パラメータ: $head オブジェクトを定義します

$head オブジェクトを格納する一時変数 $cur を定義します

while ループ、条件 $cur->next が null ではありません

印刷してください

ポインタを後方に移動します。$cur=$cur->next

PHP バージョン:

<&#63;php
/**
* 英雄类
*/
class Hero{
  public $no;
  public $name;
  public $nickname;
  public $next=null;
  public function __construct($no='',$name='',$nickname=''){
    $this->no=$no;
    $this->name=$name;
    $this->nickname=$nickname;
  }
}
class LinkListDemo{
  public static function main(){
    $head=new Hero();
    $hero1=new Hero(1,"宋江","及时雨");
    $head->next=$hero1;
    $hero2=new Hero(2,"卢俊义","玉麒麟");
    $hero1->next=$hero2;
    LinkListDemo::showHeros($head);
  }
  /**
  * 展示英雄
  */
  public static function showHeros($head){
    $cur=$head;
    while($cur->next!=null){
      echo "姓名:".$cur->next->name."<br/>";
      $cur=$cur->next;
    }
  }

}

LinkListDemo::main();

Java バージョン:

class Hero{
    public int no;
    public String name;
    public String nickname;
    public Hero next=null;
    public Hero(){
      
    }
    public Hero(int no,String name,String nickname) {
      this.no=no;
      this.name=name;
      this.nickname=nickname;
    }

  }
public class LinkListDemo {
  /**
   * @param args
   */
  public static void main(String[] args) {
    Hero head=new Hero();
    
    Hero hero1=new Hero(1, "宋江", "及时雨");
    head.next=hero1;
    Hero hero2=new Hero(2, "卢俊义", "玉麒麟");
    hero1.next=hero2;
    showHeros(head);
  }
  /**
   * 展示英雄
   * @param head
   */
  public static void showHeros(Hero head){
    Hero cur=head;
    while(cur.next!=null){
      System.out.println("姓名:"+cur.next.name);
      cur=cur.next;
    }
  }
}

PHP リンク リストのデータ構造 (単一リンク リスト) について簡単に説明した上記の記事は、編集者が共有したすべての内容です。参考にしていただければ幸いです。また、Script Home をサポートしていただければ幸いです。

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