Bài tập Cấu trúc dữ liệu và thuật toán - Chương 3: Cây

Bài tập chương 3  
Cây - Tree  
Bài 1. Cho cây như hình  
Trả lời các câu hỏi sau  
•
•
•
•
•
Nút nào là nút gốc, nút lá, nút trong  
Liệt kê các nút anh em  
Liệt kê chiều cao, sâu của các nút trên cây  
Chiều cao (chiều sâu) của cây là bao nhiêu?  
Đưa ra danh sách nhãn các nút khi thực hiện duyệt cây theo thứ tự trước (pre-order), và duyệt  
cây theo thứ tự sau (post-order)  
Bài 2. Hãy so sánh 3 phương pháp dùng để lưu trữ cây đã mô tả trong slide  
Bài 3. Xây dựng các cây nhị phân chứa 14 nút  
Bài 4. Đưa ra danh sách các đỉnh khi duyệt các cây nhị phân sau theo: thứ tự trước, thứ tự giữa và thứ tự sau  
Bài 5. Hãy minh họa việc lưu trữ các cây nhị phân trong bài 3 bằng cấu trúc liên tiếp (mảng)  
Bài 6. Chứng minh rằng cây nhị phân có độ cao ℎ thì có số nút tối đa là 2ℎ+1 − 1  
Bài 7. Chứng minh rằng cây nhị phân có 푛 nút con thì có 푛 + 1 con trỏ rỗng biểu diễn các nút con  
Bài 8. Nút đầy đủ là nút có 2 nút con, chứng minh rằng số lượng nút đầy đủ cộng 1 đúng bằng số lượng nút  
lá trên một cây nhị phân khác rỗng  
Bài 9. Vẽ cây biểu thức biểu diễn các biểu thức sau  
a) 3 + 5 ^ (12 / 6 + 1) – 7 ∗ 15 / 3 + 6  
b) 푠푖푛 (5 ∗ 푎 + 7) + 2 – 6 ∗ 5 ∗ 푏 + 3 ^ 2 ^ 푐 / 2  
(
)
c) 23 + 푎 − √ (6 ∗ 푏 + 5) / 9 ^ 2 ∗ cos(3 ∗ 푐) (chú ý √ 6 ∗ 푏 + 5 là tương đương với 6 ∗ 푏 + 5)  
√
(
)
(
)
(
)
d) 3 ≥ 푎 퐴푁퐷 � 푐 ≥ 푑 푂푅 �푁푂푇 4 < 푑 ��  
e) 5 ^ 2 ^ 3 ^ (4 ∗ 9 – 5 / 푏 + 6) % (7 + 푎 + 푐)  
(
)
f) 푎푏푠 6 − 푏 ∗ 2 + 7 ∗ 푎 ^ 2 / 푐 + 5  
Duyệt lại các cây biểu thức này để đưa ra các biểu thức dạng tiền tố, trung tố và hậu tố  
Bài 10.Hãy xây dựng hàm đệ quy để đếm số lượng nút trên cây nhị phân  
Bài 11.Hãy xây dựng thuật toán để kiểm tra xem nút 푢 có phải là tổ tiên của nút 푣 hay không. (푢, 푣 là hai nút  
trên cây). Nếu 푢 là tổ tiên của 푣 thì sẽ có đường đi từ 푢 đến 푣 trên cây.  
Bài 12.Hãy xây dựng hàm để kiểm tra xem một cây nhị phân có phải là cây nhị phân cân bằng hay không  
Bài 13.Hãy cài đặt các thuật toán để duyệt cây nhị phân theo thứ tự trước, giữa và thứ tự sau  
Bài 14.Hãy xây dựng hàm để tính độ cao của một cây nhị phân  
Bài 15.Xây dựng hàm để tìm phần tử có giá trị lớn nhất, nhỏ nhất trên cây nhị phân  
Bài 16.Xây dựng hàm để tìm xem khóa 푘 có xuất hiện trên cây hay không  
Bài 17.Xây dựng hàm để đếm số lượng nút lá trên cây nhị phân  
Bài 18.Cài đặt thuật toán xây dựng cây biểu thức từ một biểu thức dạng hậu tố  
Bài 19.Xây dựng hàm để tìm và trả về nút tổ tiên chung gần nhất của hai nút trên cây nhị phân  
Bài 20.Giả sử có một cây nhị phân trong đó các nút trên cây có khóa kiểu nguyên. Hãy xây dựng hàm để in ra  
tổng giá trị các nút trên các đường đi có thể từ gốc đến các nút lá trên cây  
pdf 2 trang Thùy Anh 13880 Free
Bạn đang xem tài liệu "Bài tập Cấu trúc dữ liệu và thuật toán - Chương 3: Cây", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_tap_cau_truc_du_lieu_va_thuat_toan_chuong_3_cay.pdf