Bài tập chương 3- Tree - Cấu trúc dữ liệu và giải thuật | Trường Đại học Bách khoa Hà Nội

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 duyệt theo thứ tự giữa ta được biểu thức tiền tố. Tài liệu được sưu tầm, giúp bạn ôn tập và đạt kết quả cao. Mời bạn đọc đón xem!

Bài tp chương 3
Cây - Tree
Bài 1. Cho cây như hình
Tr li các câu hi sau
Nút nào là nút gc, nút lá, nút trong
Lit kê các nút anh em
Lit kê chiu cao, sâu ca các nút trên cây
Chiu cao (chiu sâu) ca cây là bao nhiêu?
Đưa ra danh sách nhãn các nút khi thc hin duyt cây theo th t trưc (pre-order), và duyt
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 dng các cây nh phân cha 14 nút
Bài 4. Đưa ra danh sách các đnh khi duyt các cây nh phân sau theo: th t trưc, th t gia và th t sau
Bài 5. Hãy minh ha vic lưu tr các cây nh phân trong bài 3 bng cu trúc liên tiếp (mng)
Bài 6. Chng minh rng cây nh phân có đ cao thì có s nút ti đa là 2

1
Bài 7. Chng minh rng cây nh phân có nút con thì có + 1 con tr rng biu din các nút con
Bài 8. Nút đy đ là nút có 2 nút con, chng minh rng s ng nút đy đ cng 1 đúng bng s ng nút
lá trên mt cây nh phân khác rng
Bài 9. V cây biu thc biu din các biu thc 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 vi
6 + 5
)
d)
(
3
)
 󰇡
(

)


(
4 <
)
󰇢
e) 5 ^ 2 ^ 3 ^ (4 9 – 5 / + 6) % (7 + + )
f) 
(
6 2 + 7
)
^ 2 /  + 5
Duyt li các cây biu thc này đ đưa ra các biu thc dng tin t, trung t và hu t
Bài 10. Hãy xây dng hàm đ quy đ đếm s ng nút trên cây nh phân
Bài 11. Hãy xây dng thut toán để kim tra xem nút phi là t tiên ca nút hay không. (, là hai nút
trên cây). Nếu là t tiên ca thì s có đưng đi t đến trên cây.
Bài 12. Hãy xây dng hàm đ kim tra xem mt cây nh phân có phi là cây nh phân cân bng hay không
Bài 13. y cài đt các thut toán đ duyt cây nh phân theo th t trưc, gia và th t sau
Bài 14. Hãy xây dng hàm đ tính đ cao ca mt cây nh phân
Bài 15. Xây dng hàm đ tìm phn t có giá tr ln nht, nh nht trên cây nh phân
Bài 16. Xây dng hàm đ tìm xem khóa có xut hin trên cây hay không
Bài 17. Xây dng hàm đ đếm s ng nút lá trên cây nh phân
Bài 18. Cài đt thut toán xây dng cây biu thc t mt biu thc dng hu t
Bài 19. Xây dng hàm đ tìm và tr v nút t tiên chung gn nht ca hai nút trên cây nh phân
Bài 20. Gi s có mt cây nh phân trong đó các nút trên cây có khóa kiu nguyên. Hãy xây dng hàm đ in ra
tng giá tr các nút trên các đưng đi có th t gc đến các nút lá trên cây
| 1/2

Preview text:

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