Algorithm – Tạo và sử dụng cây biểu thức (expression tree)

Các biểu thức toán học đều có thể được thể hiện dưới dạng cấu trúc cây, trong đó các node lá là những toán hạng (biến, hằng số) và các node còn lại là các toán tử (*, /, +, -). Với cách biểu diễn dạng này, ta có thể dễ dàng dùng các phép duyệt với cây nhị phân để tạo ra những biểu thức toán học dạng tiền tố, trung tố và hậu tố mà bài trước tôi đã trình bày qua.  Và khái niệm này được gọi là cây biểu thức, hãy thử tìm hiểu làm cách nào để tạo và tận dụng được các khả năng của nó.

Đọc tiếp

Algorithm – Cập nhật thuật toán vẽ cây nhị phân

Bản cài đặt vẽ cây nhị phân trước đây (xem tại đây) tôi đã giới thiệu sử dụng phép chia dư để tính khoảng cách giữa các node theo chiều ngang. Vì thế xác suất các node nằm đè lên nhau rất lớn, đặc biệt khi cây có nhiều node thì mức độ tập trung node của cây tại một vùng khiến cho các node chỉ nhìn được một phần nhỏ. Đọc tiếp

Y2 – BSTreeDemo 1.0 – Minh họa cây nhị phân tìm kiếm (BST)

Đây là chương trình tôi viết để minh họa về BST như đã nói ở trên. Vì được viết khá vội và chỉ để minh họa đơn giản nên tôi chưa chú trọng nhiều đến giao diện và hiệu suất thực thi, tuy nhiên chức năng cũng khá đầy đủ để bạn tham khảo.

 

Download

Đọc tiếp