Câu hỏi:
01/10/2024 44Cho mảng A = [5, 7, 30, 23, 34, 15]. Hãy vẽ cây tìm kiếm nhị phân biểu diễn mảng A.
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:
Để vẽ cây tìm kiếm nhị phân (Binary Search Tree - BST) từ mảng A = [5, 7, 30, 23, 34, 15], ta cần lần lượt chèn từng phần tử của mảng vào cây theo quy tắc của cây tìm kiếm nhị phân:
1. Nếu cây rỗng, phần tử đầu tiên sẽ là gốc.
2. Với mỗi phần tử tiếp theo:
Nếu phần tử nhỏ hơn hoặc bằng nút hiện tại, chèn vào cây con bên trái.
Nếu phần tử lớn hơn nút hiện tại, chèn vào cây con bên phải.
Bắt đầu từ mảng A = [5, 7, 30, 23, 34, 15]:
1. Phần tử đầu tiên là 5, nó sẽ là gốc.
2. Chèn 7 vào cây:
7 > 5, nên 7 là con phải của 5.
3. Chèn 30 vào cây:
30 > 5, chuyển sang cây con phải của 5.
30 7, nên 30 là con phải của 7.
4. Chèn 23 vào cây:
23 > 5, chuyển sang cây con phải của 5.
23 > 7, chuyển sang cây con phải của 7.
23 30, nên 23 là con trái của 30.
5. Chèn 34 vào cây:
34 > 5, chuyển sang cây con phải của 5.
34 > 7, chuyển sang cây con phải của 7.
34 30, nên 34 là con phải của 30.
6. Chèn 15 vào cây:
15 > 5, chuyển sang cây con phải của 5.
15 > 7, chuyển sang cây con phải của 7.
15 < 30, chuyển sang cây con trái của 30.
15 < 23, nên 15 là con trái của 23.
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Cho cây tìm kiếm nhị phân như Hình 9. Em hãy thực hiện:
a) Mô tả các bước để tìm giá trị x = 22 có trong cây theo các thuật toán: duyệt trước, duyệt giữa, duyệt sau và tìm kiếm trên cây tìm kiếm nhị phân.
b) Với các thuật toán ở câu a), trong trường hợp tổng quát của cây tìm kiếm nhị phần, thuật toán nào có số lần so sánh khóa cần tìm với khóa của các nút là ít nhất.
c) Viết chương trình tạo cây tìm kiếm nhị phân ở Hình 9. Sau đó, in ra màn hình các khóa có trong cây này theo thứ tự tăng dần.
Câu 2:
Em hãy vẽ cây tìm kiếm nhị phân bằng cách đưa vào cây rỗng lần lượt các phần tử của mảng A = [3, 6, 13, 7, 5, 2, 8, 9].
Câu 3:
Cho tập hợp A gồm các số nguyên dương A = (6, 14, 10, 34, 40, 30, 46, 20, 24, 22} được lưu trữ bằng hai cách sau:
Cách 1: Lưu vào mảng một chiều.
Cho giá trị x = 20. Em hãy trình bày:
a) Cách tìm kiếm x trong mảng A.
b) Cách tìm kiếm x trong cây nhị phân.
Câu 4:
Trình bày thuật toán xác định giá trị * = 34 có thuộc cây tìm kiếm nhị phân được biểu diễn ở Hình 4b hay không.
về câu hỏi!