State True or False: In a singly-linked list, there is no efficient way to insert a node before a given node in the middle or at the end of the list, but we can insert a node after a given node or at the beginning of the list with time complexity O(1).

2 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "True". Trong danh sách liên kết đơn mỗi nút chỉ giữ liên kết tới nút sau, nên muốn chèn trước một nút cho trước phải tìm được nút liền trước nó, mà cách duy nhất là đi lại từ đầu danh sách, chi phí tỉ lệ với số nút. Ngược lại, chèn sau một nút đã có trong tay chỉ cần hai phép gán liên kết, còn chèn ở đầu chỉ cần cho nút mới trỏ vào head rồi dời head, cả hai đều tốn thời gian hằng số và không phụ thuộc độ dài danh sách. Vì vậy nhận định đúng cả hai nửa của nó. Trả lời "False" chỉ hợp khi danh sách có thêm liên kết lùi, tức danh sách liên kết kép, hoặc khi người ta dùng mánh chèn sau rồi đổi dữ liệu hai nút để giả lập phép chèn trước; với danh sách liên kết đơn thuần thì cả hai mệnh đề trong câu đều đứng vững.

Cùng phần 1

Xuất hiện trong 1 bộ đề