เมื่อจำเป็นต้องพิมพ์โหนดเฉพาะจากจุดสิ้นสุดของรายการที่เชื่อมโยง เมธอด 'list_length' และ 'return_from_end' ถูกกำหนดไว้ "list_length" แสดงความยาวของรายการที่เชื่อมโยง
วิธีการ 'return_from_end' ใช้เพื่อส่งคืนองค์ประกอบที่ n จากจุดสิ้นสุดของรายการที่เชื่อมโยง
ด้านล่างนี้เป็นการสาธิตสำหรับสิ่งเดียวกัน -
ตัวอย่าง
คลาสโหนด:def __init__(ตัวเอง, ข้อมูล):self.data =data self.next =Noneclass LinkedList_structure:def __init__(ตัวเอง):self.head =ไม่มี self.last_node =ไม่มี def add_vals (ตัวเอง, ข้อมูล):ถ้า self.last_node ไม่มี:self.head =โหนด (ข้อมูล) self.last_node =self.head อื่น:self.last_node.next =โหนด (ข้อมูล) self.last_node =self.last_node.nextdef list_length(my_list):my_len =0 curr =my_list.head while curr:curr =curr.next my_len =my_len + 1 return my_lendef return_from_end(my_list, n):l =list_length(my_list) curr =my_list.head for i in range(l - n):curr =curr.next ส่งคืน curr.datamy_instance =LinkedList_structure()my_list =input('Enter the elements of the linked list..').split()for elem in my_list:my_instance.add_vals(int(elem))n =int( input('Enter the value for n.. '))my_result =return_from_end(my_instance, n)print('องค์ประกอบที่ n จากจุดสิ้นสุดคือ:{}'.format(my_result))ผลลัพธ์
ป้อนองค์ประกอบของรายการที่เชื่อมโยง..45 31 20 87 4ป้อนค่าสำหรับ n.. 2องค์ประกอบที่ n จากจุดสิ้นสุดคือ:87คำอธิบาย
-
สร้างคลาส "โหนด" แล้ว
-
'LinkedList_structure' คลาสอื่นพร้อมแอตทริบิวต์ที่จำเป็นจะถูกสร้างขึ้น
-
มีฟังก์ชัน 'init' ที่ใช้ในการเริ่มต้นองค์ประกอบแรก นั่นคือ 'head' และ 'last_node' เป็น 'None'
-
มีการกำหนดเมธอดชื่อ 'add_vals' ซึ่งช่วยเพิ่มมูลค่าให้กับสแต็ก
-
มีการกำหนดวิธีการชื่อ 'list_length' ซึ่งกำหนดความยาวของรายการที่เชื่อมโยง และส่งคืนเป็นผลลัพธ์
-
มีการกำหนดวิธีการอื่นที่ชื่อว่า 'return_from_end' ซึ่งช่วยให้คืนค่า 'n' จากจุดสิ้นสุดของรายการที่เชื่อมโยง
-
อินสแตนซ์ของ 'LinkedList_structure' ถูกสร้างขึ้น
-
เพิ่มองค์ประกอบในรายการที่เชื่อมโยง
-
องค์ประกอบจะแสดงบนคอนโซล
-
วิธีการ 'return_from_end' ถูกเรียกในรายการที่เชื่อมโยงนี้
-
เอาต์พุตจะแสดงบนคอนโซล