Câu hỏi:
26/06/2024 19Cho cây nhị phân T được biểu diễn bởi mảng một chiều A. Viết các hàm duyệt trước, duyệt giữa và duyệt sau trên cây T.
Siêu phẩm 30 đề thi thử THPT quốc gia 2024 do thầy cô VietJack biên soạn, chỉ từ 100k trên Shopee Mall.
Quảng cáo
Trả lời:
Viết các hàm duyệt trước, duyệt giữa và duyệt sau trên cây T như sau:
function preorderTraversal(A, index) {
if (index < A.length) {
console.log(A[index]); // In ra giá trị của nút hiện tại
preorderTraversal(A, 2 * index + 1); // Duyệt nút con trái
preorderTraversal(A, 2 * index + 2); // Duyệt nút con phải
}
}
function inorderTraversal(A, index) {
if (index < A.length) {
inorderTraversal(A, 2 * index + 1); // Duyệt nút con trái
console.log(A[index]); // In ra giá trị của nút hiện tại
inorderTraversal(A, 2 * index + 2); // Duyệt nút con phải
}
}
function postorderTraversal(A, index) {
if (index < A.length) {
postorderTraversal(A, 2 * index + 1); // Duyệt nút con trái
postorderTraversal(A, 2 * index + 2); // Duyệt nút con phải
console.log(A[index]); // In ra giá trị của nút hiện tại
}
}
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Cho mảng [A, B, C, D, E, F, G, H, I, J] biểu diễn một cây nhị phân. Em hãy cho biết thứ tự duyệt các nút của cây này theo phép duyệt trước (gốc-trái-phải).
Câu 2:
Cho mảng một chiều A biểu diễn cây nhị phân hoàn chỉnh T. Viết hàm 1eve1(k) trả về mức của nút tương ứng với phần tử A[k] của cây T.
Câu 3:
Vẽ sơ đồ cây cho các biểu thức toán học sau:
a) (x + y)*(x – (y + z)/t).
b) x + (y + (z + t)/(u – v)).
Câu 5:
Cho mảng A có 14 phần tử, biểu diễn cây nhị phân hoàn chỉnh. Tính chiều cao của cây nhị phân này.
Lưu ý: Cây nhị phân tổng quát cũng có thể được biểu diễn bằng mảng một chiều bằng cách bổ sung các nút rỗng có giá trị None để tạo thành cây hoàn chỉnh, sau đó biểu diễn mảng như đã nêu trên. Ví dụ sau minh hoạ cho ý tưởng này.
Câu 6:
Cây nhị phân gọi là đầy đủ nếu mỗi nút của nó hoặc là nút lá hoặc có đúng hai nút con. Khẳng định "Cây nhị phân đầy đủ sẽ luôn là hoàn chỉnh hoặc hoàn hảo" là đúng hay sai?
về câu hỏi!