2015-02-02 4 views
1

균형 및 불균형 이진 트리 처리.트리의 높이의 함수로 가능한 이진 트리 수 사이에 링크가 있습니까?

height = 0, possible trees = 1 (nothing) 
height = 1, possible trees = 1 (leaf) 
height = 2, possible trees = 3 

것은 내가 그것을 높이 h 이하의 나무를 세는 것 같아요 주로하기 때문에, 나는 카탈로니아 기능을 찾고 있어요하지만 그것은 나를 어디서든 도움이 될 않았습니다. 예를 들어, 높이 2 인 경우 높이 1도 계산됩니다 (높이 0 일 수도 있음).

+0

관련 : http://cs.stackexchange.com/questions/14043/number-of-binary-trees-with-given-height. 그들은 함수의 성장 순서 ('a^1 (2^h)'의 일부에 대해서)를 정확히 지적 할 수있다. – blazs

답변

2

정수 시퀀스 A001699, "높이 n의 이진 트리 수"를 찾고있는 것으로 보입니다. 이들을 생성하는 가능한 알고리즘은 다음과 같다 :

a (n + 1) = 2 * a (n) * (a (0) + ... + a (n-1)^2

불행히도 폐쇄 형 버전이없는 것 같습니다. 각 공식은 자체적으로 재귀 적이거나 재귀적인 A003095를 사용합니다.

+0

동적 프로그래밍을 사용하여 평가하는 것이 상대적으로 쉽다는 것을 지적하고 싶습니다. – blazs