Câu hỏi:
12/07/2024 254Hãy nêu các phép toán danh sách liên kết có thời gian thực hiện O(n).
Sách mới 2k7: Tổng ôn Toán, Lí, Hóa, Văn, Sử, Địa…. kỳ thi tốt nghiệp THPT Quốc gia 2025, đánh giá năng lực (chỉ từ 110k).
Quảng cáo
Trả lời:
Các phép toán danh sách liên kết có thời gian thực hiện O(n) bao gồm:
- Tìm kiếm một phần tử: Để tìm kiếm một phần tử trong danh sách liên kết, ta phải duyệt qua từng nút của danh sách một cách tuần tự để tìm kiếm phần tử cần tìm. Thời gian thực hiện của phép toán này là O(n).
- Chèn một phần tử vào cuối danh sách: Để chèn một phần tử vào cuối danh sách, ta phải duyệt qua từng nút của danh sách để đến cuối danh sách và thực hiện thêm phần tử vào cuối danh sách. Thời gian thực hiện của phép toán này cũng là O(n).
- Xóa một phần tử khỏi danh sách: Để xóa một phần tử khỏi danh sách, ta phải tìm kiếm phần tử đó trong danh sách, sau đó thực hiện xóa phần tử đó bằng cách điều chỉnh các liên kết giữa các nút trong danh sách. Tương tự như tìm kiếm một phần tử, thời gian thực hiện của phép toán này là O(n).
- Đảo ngược danh sách: Để đảo ngược danh sách, ta phải duyệt qua từng nút của danh sách, thay đổi liên kết giữa các nút để đảo ngược danh sách. Vì vậy, thời gian thực hiện của phép toán này là O(n).
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Hãy nêu các phép toán danh sách liên kết có thời gian thực hiện (1).
Câu 2:
Dựa trên hình minh hoạ, mô tả các bước thực hiện các phép toán sau của danh sách liên kết để minh hoạ chúng đều có thời gian là O(1).
a) Thêm nút vào cuối danh sánh, thêm nút vào giữa danh sách.
b) Gỡ bỏ nút ở cuối danh sánh, ở đầu danh sách.
Câu 3:
Nếu muốn truy cập nút chứa dữ liệu X thì phải làm gì? Ước lượng thời gian thực hiện.
Câu 5:
Phân tích yêu cầu ứng dụng của một danh sách nhóm đứng đâu top X và cho biết, nếu dùng kiểu danh sách của Python để thực hiện thì:
a) Những thao tác cần làm với danh sách top X sẽ thực hiện qua các phép toán danh sách Python như thế nào?
b) Kể tên một vài phép toán danh sách của Python không cần dùng đến cho trường hợp này.
về câu hỏi!