leetCode 96. 不同的二叉搜尋樹(swif)
阿新 • • 發佈:2018-12-11
給定一個整數 n,求以 1 ... n 為節點組成的二叉搜尋樹有多少種?
示例:
輸入: 3 輸出: 5 解釋: 給定 n = 3, 一共有 5 種不同結構的二叉搜尋樹: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 3
class Solution { func numTrees(_ n: Int) -> Int { if n==0 { return 0} if n==1 { return 1} var nums = Array.init(repeating: 0, count: n+1) nums[0] = 1;nums[1] = 1 for i in 2...n { for j in 0...i-1{ nums[i] = nums[i] + nums[j] * nums[i-1-j] } } return nums[n] } }