Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python เพื่อพิมพ์โหนดที่ N จากรายการที่เชื่อมโยงล่าสุด


เมื่อจำเป็นต้องพิมพ์โหนดเฉพาะจากจุดสิ้นสุดของรายการที่เชื่อมโยง เมธอด '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' ถูกเรียกในรายการที่เชื่อมโยงนี้

  • เอาต์พุตจะแสดงบนคอนโซล