class Node:
def __init__(self,value):
self.value = value
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def add_front(self,value):
new_node = Node(value)
new_node.next = self.head
self.head = new_node
def add_back(self,value):
new_node = Node(value)
if self.head is None:
self.head = new_node
else:
current = self.head
while current.next is not None:
current = current.next
current.next = new_node
def print_list(self):
current = self.head
while current is not None:
print(current.value)
current = current.next
list1 = LinkedList()
list1.add_front(1)
list1.add_front(2)
list1.add_back(3)
list1.print_list()
Salin selepas log masuk
1. Kelas Nod:
- Mewakili elemen individu dalam senarai terpaut.
- Setiap nod mempunyai dua atribut: nilai untuk menyimpan data dan di sebelah menunjuk ke nod seterusnya dalam senarai.
- Apabila nod dibuat, penuding seterusnya ditetapkan kepada Tiada.
2. Kelas LinkedList:
- Mengurus operasi senarai terpaut.
- Mempunyai kepala atribut yang merupakan titik permulaan senarai terpaut. Pada mulanya, kepala ditetapkan kepada Tiada kerana senarai itu kosong.
3. add_front Kaedah:
- Menambahkan nod baharu pada bahagian hadapan senarai terpaut.
- Nod baharu dibuat dengan nilai yang diberikan.
- Penunjuk seterusnya nod baharu ditetapkan kepada ketua senarai semasa.
- Kepala senarai kemudian dikemas kini kepada nod baharu.
4. add_back Kaedah:
- Menambahkan nod baharu pada penghujung senarai terpaut.
- Nod baharu dibuat dengan nilai yang diberikan.
- Jika senarai kosong (iaitu, kepala Tiada), nod baharu ditetapkan sebagai kepala.
- Jika senarai tidak kosong, ia merentasi ke hujung senarai, kemudian mengemas kini penuding seterusnya nod terakhir untuk menghala ke nod baharu.
5. print_list Kaedah:
- Mencetak semua nilai dalam senarai terpaut dari kepala hingga hujung.
- Bermula dari kepala dan berulang melalui setiap nod menggunakan penuding seterusnya sehingga ia mencapai penghujung (Tiada), mencetak nilai setiap nod.
6. Contoh Penggunaan:
- Satu contoh LinkedList dibuat.
- add_front dipanggil dua kali untuk menambah nod dengan nilai 1 dan 2 ke hadapan senarai.
- add_back dipanggil untuk menambah nod dengan nilai 3 ke penghujung senarai.
- print_list dipanggil untuk mencetak nilai semua nod dalam senarai terpaut. Outputnya ialah 2, 1, 3, menunjukkan bahawa nod telah ditambah dengan betul.
Atas ialah kandungan terperinci Cara Melaksanakan Senarai Berpaut Tunggal dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!