Pautan adalah struktur data asas dalam sains komputer. Berbeza dengan array, senarai yang dipautkan dinamik, yang bermaksud bahawa saiz mereka boleh tumbuh atau mengecut tanpa perlu menyesuaikan operasi saiz. Tutorial ini akan memperkenalkan pengetahuan asas senarai yang dipautkan dalam PHP.
struktur nod senarai yang dipautkan
Setiap nod dalam senarai yang dipautkan terdiri daripada dua bahagian:
Data: Nilai yang disimpan dalam nod.
Melaksanakan Senarai Berkaitan Mudah
<code class="language-php">class Node { public $data; public $next; public function __construct($data) { $this->data = $data; $this->next = null; } }</code>
Untuk menguruskan nod, kami membuat kelas LinkedList yang menyediakan kaedah untuk senarai penyelenggaraan dan menyediakan kaedah mengendalikannya.
Operasi Asas
<.> 1. Tambahkan nod ke hujung
Kami menambah nod ke hujung senarai dengan mencapai nod berulang sehingga nod terakhir mencapai nod terakhir.<.> 2. Tunjukkan senarai
kita boleh melintasi senarai untuk mencetak semua elemen.
<code class="language-php">class LinkedList { private $head; public function __construct() { $this->head = null; } public function append($data) { $newNode = new Node($data); if ($this->head === null) { $this->head = $newNode; } else { $current = $this->head; while ($current->next !== null) { $current = $current->next; } $current->next = $newNode; } } }</code>
<.> 3. Padam nod
Padam nod termasuk mencari nod dan mengemas kini penunjuk nod sebelumnya.
<code class="language-php">public function display() { $current = $this->head; while ($current !== null) { echo $current->data . " -> "; $current = $current->next; } echo "NULL\n"; }</code>
Penggunaan contoh
Berikut adalah kaedah melaksanakan senarai yang dipautkan:
<code class="language-php">public function delete($data) { if ($this->head === null) { return; } if ($this->head->data === $data) { $this->head = $this->head->next; return; } $current = $this->head; while ($current->next !== null && $current->next->data !== $data) { $current = $current->next; } if ($current->next !== null) { $current->next = $current->next->next; } }</code>
Kesimpulan
<code class="language-php">$linkedList = new LinkedList(); $linkedList->append(10); $linkedList->append(20); $linkedList->append(30); echo "初始列表:\n"; $linkedList->display(); $linkedList->delete(20); echo "删除 20 后:\n"; $linkedList->display();</code>
Atas ialah kandungan terperinci Pengenalan kepada senarai yang dipautkan dalam PHP: Panduan Pemula S. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!