Trang chủ Lớp 11 SGK Tin học 11 - Kết nối tri thức Viết hàm delete_Jast(L) có chức năng xóa phần tử cuối cùng của...

Viết hàm delete_Jast(L) có chức năng xóa phần tử cuối cùng của danh sách liên kết L...

Dựa vào kiến thức trong bài kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi Giải chi tiết Câu hỏi 2 trang 84 Tin học 11 - Kết nối tri thức, Vận dụng 2 - trang 137 Bài 30. Thiết lập thư viện cho chương trình SGK Tin học 11 - Kết nối tri thức.

Viết hàm delete_Jast(L) có chức năng xóa phần tử cuối cùng của danh sách liên kết L.

Method - Phương pháp giải/Hướng dẫn/Gợi ý

Dựa vào kiến thức trong bài kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi.

Answer - Lời giải/Đáp án

class Node:

 def __init__(self, key=None):

  self.key = key

  self.next = None

def delete_Jast(L):

 if L is None or L.next is None: # Nếu danh sách liên kết rỗng hoặc chỉ có một phần tử

  return None # Không cần xoá, trả về None

 current = L # Đặt con trỏ current trỏ đến node đầu tiên của danh sách liên kết

 while current.next.next is not None: # Duyệt đến node trước node cuối cùng

  current = current.next # Chuyển con trỏ current sang node kế tiếp trong danh sách liên kết

 current.next = None # Thay đổi liên kết của node trước node cuối cùng để xóa node cuối cùng

 return L # Trả về đối tượng đầu tiên của danh sách liên kết sau khi xoá

L = delete_Jast(L)