用PHP實現的單鏈表

2021-07-22 14:29:50 字數 2138 閱讀 6215

單鏈表顧名思義就是乙個鏈式資料結構,它有乙個表頭,並且除了最後乙個節點外,所有節點都有其後繼節點。如下圖。

//鍊錶節點 

class node

}

鍊錶中還有兩個特別重要的方法,插入和刪除。插入需要找到插入的位置,把前乙個元素的next指標指向被插入的節點,並將被插入節點的next指標指向後乙個節點,如下圖左側所示。而刪除則是把前乙個節點的next指標指向後乙個節點,並返回被刪除元素的資料內容,如下圖右側所示。

//單鏈表 

class singellinklist

//獲取鍊錶長度

public function getlinklength()

return $i;

} //新增節點資料

public function addlink($node)

$current = $current->next;

} $node->next = $current->next;

$current->next = $node;

} //刪除鍊錶節點

public function dellink($id)

$current = $current->next;

} if ($flag) else

}//判斷連表是否為空

public function isempty()

//清空鍊錶

public function clear()

//獲取鍊錶

public function getlinklist()

while ( $current->next != null )

$current = $current->next;

} }

//獲取節點名字

public function getlinknamebyid($id)

while ( $current->next != null )

$current = $current->next;

} return $current->name;

} //更新節點名稱

public function updatelink($id, $name)

while ( $current->next != null )

$current = $current->next;

} return $current->name = $name;

} }$lists = new singellinklist ();

$lists->addlink ( new node ( 5, 'eeeeee' ) );

$lists->addlink ( new node ( 1, 'aaaaaa' ) );

$lists->addlink ( new node ( 6, 'ffffff' ) );

$lists->addlink ( new node ( 4, 'dddddd' ) );

$lists->addlink ( new node ( 3, 'cccccc' ) );

$lists->addlink ( new node ( 2, 'bbbbbb' ) );

$lists->getlinklist ();

echo "

-----------刪除節點--------------

"; $lists->dellink ( 5 );

$lists->getlinklist ();

echo "

-----------更新節點名稱--------------

"; $lists->updatelink ( 3, "222222" );

$lists->getlinklist ();

echo "

-----------獲取節點名稱--------------

"; echo $lists->getlinknamebyid ( 5 );

echo "

-----------獲取鍊錶長度--------------

"; echo $lists->getlinklength ();

用PHP實現的單鏈表

單鏈表顧名思義就是乙個鏈式資料結構,它有乙個表頭,並且除了最後乙個節點外,所有節點都有其後繼節點。如下圖。首先,我們寫出鍊錶節點的類。單鏈表中的每乙個節點,都儲存其資料域和後驅指標 鍊錶節點 class node 鍊錶中還有兩個特別重要的方法,插入和刪除。插入需要找到插入的位置,把前乙個元素的nex...

用PHP實現的單鏈表

首先,我們寫出鍊錶節點的類。單鏈表中的每乙個節點,都儲存其資料域和後驅指標 php view plain copy 鍊錶節點 class node 鍊錶中還有兩個特別重要的方法,插入和刪除。插入需要找到插入的位置,把前乙個元素的next指標指向被插入的節點,並將被插入節點的next指標指向後乙個節點...

php單鏈表實現

php單鏈表實現 單鏈表 class hero function addhero head,hero else if cur next no hero no else if flag 增加function showhero head 刪除特定編號的 function delhero head,no ...