用PHP實現的單鏈表

2022-05-21 18:42:12 字數 2405 閱讀 6523

首先,我們寫出鍊錶節點的類。單鏈表中的每乙個節點,都儲存其資料域和後驅指標

[php]view plain

copy

//鍊錶節點   

class node    

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

[php]view plain

copy

//單鏈表   

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 鍊錶中還有兩個特別重要的方法,插入和刪除。插入需要找到插入的位置,把前乙個元素的next指標指向被插入的節點,並將被插入節點的next指標指向後乙個節點,如下圖左...

用PHP實現的單鏈表

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

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 ...