Giải chuyên đề Tin 12 Cánh diều Bài 3: Cây tìm kiếm nhị phân có đáp án
22 người thi tuần này 4.6 228 lượt thi 7 câu hỏi
🔥 Đề thi HOT:
15 câu Trắc nghiệm Tin học 12 Cánh diều Giới thiệu trí tuệ nhân tạo có đáp án
15 câu Trắc nghiệm Tin học 12 Cánh diều Mô hình và các giao thức mạng có đáp án
15 câu Trắc nghiệm Tin học 12 Chân trời sáng tạo Bài A1 có đáp án
15 câu Trắc nghiệm Tin học 12 Kết nối tri thức có đáp án
Trắc nghiệm Tin học 12 Bài 1 (có đáp án): Một số khái niệm cơ bản
15 câu Trắc nghiệm Tin học 12 Chân trời sáng tạo Bài B1 có đáp án
15 câu Trắc nghiệm Tin học 12 Chân trời sáng tạo Bài B4 có đáp án
Trắc nghiệm Tin học 12 Bài 12 (có đáp án): Các loại kiến trúc của hệ cơ sở dữ liệu
Nội dung liên quan:
Danh sách câu hỏi:
Lời giải
Danh sách giá trị khóa các nút ở cây nhị phân (Hình 1) trong phép duyệt cây theo thứ tự giữa như sau:
1. Bắt đầu từ gốc (2), duyệt cây con trái của 2.
2. Cây con trái của 2 là 1, không có cây con trái và cây con phải. Thăm nút 1.
3. Trở lại nút gốc 2, thăm nút 2.
4. Duyệt cây con phải của 2 là 5.
5. Từ 5, duyệt cây con trái của 5 là 3.
6. Cây con trái của 3 là null, thăm nút 3.
7. Duyệt cây con phải của 3 là 4.
8. Cây con trái và cây con phải của 4 đều là null. Thăm nút 4.
9. Trở lại nút 5, thăm nút 5.
10. Duyệt cây con phải của 5 là 6, không có cây con trái và cây con phải. Thăm nút 6.
Danh sách giá trị khóa các nút theo thứ tự giữa là: 1, 2, 3, 4, 5, 6
Nhận xét đặc điểm của cây nhị phân cùng danh sách được đưa ra:
- Điều này phù hợp với đặc điểm của cây tìm kiếm nhị phân (BST). Trong cây tìm kiếm nhị phân, khi duyệt theo thứ tự giữa, các giá trị khóa luôn được liệt kê theo thứ tự tăng dần.
- Danh sách giá trị khóa được duyệt theo thứ tự giữa (In-order Traversal) của cây nhị phân này là một dãy các giá trị tăng dần.
- Như vậy, cây nhị phân này cũng là một cây tìm kiếm nhị phân.
Lời giải
An và Hòa cùng tham gia một hoạt động về bài toán trên dãy số. Giả sử các phần từ 45, 35, 60, 30, 46, 75, 11, 55, 65, 96, 12, 58 của tập số An giữ được biểu diễn dưới dạng cây nhị phân trong Hình 2, các nút được đánh chỉ số từ 0 đến 11. Hướng dẫn các bước xây dựng cây BST từ dãy số [45, 35, 60, 30, 46, 75, 11, 55, 65, 96, 12, 58]:
1. Bắt đầu với 45 là gốc.
2. Chèn 35: 35 < 45, nên 35 là con trái của 45.
3. Chèn 60: 60 > 45, nên 60 là con phải của 45.
4. Chèn 30: 30 < 45 và 30 < 35, nên 30 là con trái của 35.
5. Chèn 46: 46 > 45 và 46 < 60, nên 46 là con trái của 60.
6. Chèn 75: 75 > 45 và 75 > 60, nên 75 là con phải của 60.
7. Chèn 11: 11 < 45 và 11 < 35 và 11 < 30, nên 11 là con trái của 30.
8. Chèn 55: 55 > 45 và 55 < 60 và 55 > 46, nên 55 là con phải của 46.
9. Chèn 65: 65 > 45 và 65 > 60 và 65 < 75, nên 65 là con trái của 75.
10. Chèn 96: 96 > 45 và 96 > 60 và 96 > 75, nên 96 là con phải của 75.
11. Chèn 12: 12 < 45 và 12 < 35 và 12 < 30 và 12 > 11, nên 12 là con phải của 11.
12. Chèn 58: 58 > 45 và 58 < 60 và 58 > 46 và 58 > 55, nên 58 là con phải của 55.
Cây BST sẽ có cấu trúc như sau:
Thực hiện theo các bước sau để tìm giá trị khóa 55,
1. So sánh với nút gốc (45):
o 55 > 45: đi tới cây con phải (60).
2. So sánh với nút 60:
o 55 < 60: đi tới cây con trái (46).
3. So sánh với nút 46:
o 55 > 46: đi tới cây con phải (55).
4. So sánh với nút 55:
o 55 = 55: tìm thấy giá trị khóa.
Vậy, chỉ cần 4 bước so sánh để tìm ra nút có giá trị khóa 55 trong cây này.
Lời giải
Các bước để chèn một nút mới có giá trị khóa bằng 28 vào cây tìm kiếm nhị phân:
- Bước 1: So sánh giá trị khóa 28 với nút gốc (có giá trị khóa là 21). Vì 28 lớn hơn 21, ta di chuyển sang nút con bên phải của nút gốc.
- Bước 2: So sánh giá trị khóa 28 với nút con phải của nút gốc (có giá trị khóa là 36). Vì 28 nhỏ hơn 36, ta di chuyển sang nút con bên trái của nút này.
- Bước 3: Nút con bên trái của nút có giá trị khóa 36 không tồn tại, do đó chèn nút mới có giá trị khóa 28 làm nút con bên trái của nút có giá trị khóa 36.
Kết luận: Nút mới có giá trị khóa 28 sẽ được chèn vào vị trí là nút con bên trái của nút có giá trị khóa 36 trong cây.
Lời giải
Từ cây tìm kiểm nhị phân trong Hình 5, em hãy mô tả từng bước tìm kiểm một nút có giá trị khóá bằng 65 và một nút có giá trị khoá bằng 70 trên cây như sau:
- Bước 1: So sánh giá trị khóa 65 với nút gốc (giả sử là nút có giá trị khóa X). Nếu 65 lớn hơn X, di chuyển sang nút con bên phải của nút gốc.
- Bước 2: Tiếp tục so sánh giá trị khóa 65 với nút con bên phải (giả sử là nút có giá trị khóa Y). Nếu 65 lớn hơn Y, di chuyển sang nút con bên phải của nút này.
- Bước 3: Lặp lại quá trình so sánh cho đến khi tìm thấy nút có giá trị khóa 65 hoặc đến nút lá mà không tìm thấy (nút không có con bên phải hoặc trái phù hợp).
Đối với việc tìm kiếm nút có giá trị khóa bằng 70, quy trình tương tự như trên sẽ được áp dụng. Nếu không tìm thấy nút nào có giá trị khóa 70, điều này có nghĩa là nút đó không tồn tại trong cây.
Lời giải
Hướng dẫn gợi ý các bước làm:
Để minh họa cách xây dựng một cây tìm kiếm nhị phân (BST - Binary Search Tree) từ một dãy số nguyên dương tùy ý, hãy xem xét dãy số ví dụ: [10, 5, 15, 3, 7, 12, 18]. Ta có các bước chi tiết để xây dựng BST từ dãy số trên, bắt đầu từ cây rỗng:
Bước 1: Khởi tạo cây rỗng
Lúc đầu, cây tìm kiếm nhị phân (BST) là rỗng.
Bước 2: Thêm phần tử đầu tiên
- Phần tử 10: Là phần tử đầu tiên trong dãy, sẽ là gốc của cây.
Bước 3: Thêm phần tử thứ hai
- Phần tử 5: So sánh với gốc 10. Vì 5 < 10, nên 5 sẽ là con trái của 10.
Bước 4: Thêm phần tử thứ ba
- Phần tử 15: So sánh với gốc 10. Vì 15 > 10, nên 15 sẽ là con phải của 10.
Bước 5: Thêm phần tử thứ tư
- Phần tử 3: So sánh với gốc 10, sau đó với 5. Vì 3 < 10 và 3 < 5, nên 3 sẽ là con trái của 5.
Bước 6: Thêm phần tử thứ năm
- Phần tử 7: So sánh với gốc 10, sau đó với 5. Vì 7 < 10 và 7 > 5, nên 7 sẽ là con phải của 5.
Bước 7: Thêm phần tử thứ sáu
- Phần tử 12: So sánh với gốc 10, sau đó với 15. Vì 12 > 10 và 12 < 15, nên 12 sẽ là con trái của 15.
Bước 8: Thêm phần tử thứ bảy
- Phần tử 18: So sánh với gốc 10, sau đó với 15. Vì 18 > 10 và 18 > 15, nên 18 sẽ là con phải của 15.
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.