Unique Binary Search Trees (leetcode)
阿新 • • 發佈:2018-11-09
Given n, how many structurally unique BST's (binary search trees) that store values 1...n?
For example,
Given n = 3, there are a total of 5 unique BST's.
1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 3
class Solution: # @return an integer def f( self,n ): sum = 1 i = n while i > 1: sum = sum * i i = i - 1 return sum def numTrees(self, n): return self.f( 2 * n ) / ( self.f( n ) * self.f( n ) ) / ( n + 1 )
這是取巧使用python做的所以沒有資料太大超出int或者long long 的限制