Với n yếu tố, số lượng cây tìm kiếm nhị phân có thể được làm từ những yếu tố được đưa ra bởi các thứ n Catalan number (ký hiệu là C n). Đây là bằng
trực giác, những con số Catalan đại diện cho số cách mà bạn có thể tạo ra một cấu trúc bằng các phần tử n được làm theo cách sau:
- thứ tự các yếu tố như 1, 2, 3, ..., n.
- Chọn một trong các yếu tố đó để sử dụng làm phần tử xoay vòng. Điều này chia tách các phần tử còn lại thành hai nhóm - những phần tử đến trước phần tử và phần tử đến sau.
- Đệ quy xây dựng cấu trúc từ hai nhóm đó.
- Kết hợp hai cấu trúc đó cùng với một phần tử bạn đã xóa để có cấu trúc cuối cùng.
Mẫu này hoàn toàn phù hợp với cách bạn có thể tạo BST từ bộ phần tử n. Chọn một phần tử để sử dụng làm gốc của cây. Tất cả các phần tử nhỏ hơn phải chuyển sang bên trái và tất cả các phần tử lớn hơn phải chuyển sang bên phải. Từ đó, bạn có thể xây dựng các BST nhỏ hơn từ các phần tử bên trái và bên phải, sau đó kết hợp chúng lại với nút gốc để tạo thành một BST tổng thể. Số cách bạn có thể thực hiện việc này với các phần tử n được đưa ra bởi C n và do đó số lượng BST có thể được cho bởi số Catalan thứ n.
Hy vọng điều này sẽ hữu ích!
lẽ [liên quan] (http: // stackoverflow.com/questions/3042412/with-n-no-of-nodes-how-many-different-binary-and-binary-search-trees-possib). –