header("Content-type:text/html;charset=utf-8");
//リンクリストノード
クラスノード {
public static $count = -1 public $name / /ノード名
public $next; // 次のノード
public $id
public function __construct($name) {
$this->id = self::$count; name; -$ This-& gt;
Self :: $ count += 1; // 単一リンクテーブル
Private $ Header
;メソッド
public function __construct($data = null) {
$this->header = 新しいノード ($data);
$this->current = $this->header;
$this->header; 0;
}
//ノードデータを追加
public function addLink($node) {
if($this->current->next != null)
$this->current = $this ->現在の->次;
$この->カウント++;
$この->現在の->次 = $ノード ;
//リンクリストノードを削除
public function delLink($id) {
} $current = $this->header;
$flag = false;
while ( $current->n ext != null ) {
$ current = $ current-> next; _ $this->count--; に
t;header;
while ( $current- >next != null ) {
$current->next->id . ->name . "
";
if ($ Current-& GT; Next-& GT; Next == NULL)
$ Current = $ Current-& GT; }
Public Function Linklength () l {
checkNull id:' 。 $this->current->next->id . 'name:' 。 $this->current->next->名前。 "< br>";echo "リンクされたリストは空です!"
$current = $this-> $current = $current->next;
} }
'変更された ID:' 。 >id . ' name:' . $current->name . "
" }
// ノード名を更新
public function updateLink($id , $name) {
$this-> checkNull(); $current = $this->header; = $id) {
}
}
$list = new singelLinkList ();
$ list->addLink ( new node ('aaaaaa' ) );
$list->addLink (新しいノード ('bbbbbb' ) );
$list->addLink (新しいノード ('cccccc' ) );
$list->addLink (新しいノード ('dddddd' ) ) ;
echo "すべてのリンクされたリストのノード:
";
$list->getLinkList();
echo "
";
";
$list->getCurrent();
echo "
";
echo "リンク リストのノード ID を 0 に変更します :
";
$list->updateLink(0, '2222222');
echo "ID 0 のノードを検索します:
";
$list->getLinkById(0); >";
echo "リンク リスト ノード ID 0 を削除します:
";
$list->delLink(0);
echo "すべてのリンク リスト ノード:
";
$list->getLinkList();
echo "
";
$list->