Có bao nhiêu heap max khác nhau tồn tại cho một danh sách n số nguyên?


19

Có bao nhiêu heap max khác nhau tồn tại cho một danh sách số nguyên?n

Ví dụ: danh sách [1, 2, 3, 4]

Heap tối đa có thể là 4 3 2 1:

    4
   / \
  3   2
 /
1

hoặc 4 2 3 1:

    4 
   / \
  2   3 
 /
1

Câu trả lời:


22

Tôi không tìm thấy một biểu mẫu kín, nhưng theo mục này trong Từ điển bách khoa toàn thư trực tuyến về trình tự bắt đầu, trình tự bắt đầu bằng

1

Bạn có thể tìm thấy một đệ quy không đẹp trong cơ sở dữ liệu OEIS. Về cơ bản ý tưởng là như sau. Nguồn gốc của một đống -ary luôn luôn là tối đa. Hai cây con treo gốc là một lần nữa maxheaps. Kích thước của chúng phụ thuộc vào , hơi tẻ nhạt khi tính các kích thước (xem mục OEIS), rõ ràng . Bây giờ chúng ta có thể chọn, phần tử nào đi đến heap bên trái và phần tử nào đi đến heap bên phải. Có cách phân phối các phần tử. Điều này mang lại sự tái phátnnn1,n2n1+n2=n1(n1n1)

a(n)=(n1n1)a(n1)a(n2).
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.