leetcode-完全平方数

2020-04-25  本文已影响0人  棉花糖7

这道题看着简单,但是自己没啥思路。

有三种方法

法一:动态规划,状态转移方程式  dp[i] = min(dp[i], dp[i - j*j]+1) ,其中i是当前所求的数,dp[i]表示最少能用几个完全平方数表示i这个数,j*j 表示可能的完全平方数

法二:BFS自上而下,一个个减去可能的完全平方数,直到得到0,即可求解。

法三:BFS自下而上,从0开始,一个个加完全平方数,直到得到n,求解。

两种BFS方法都用一个数组,存储已经计算过的数据,用于剪枝。

题目 法一 法二-三
上一篇下一篇

猜你喜欢

热点阅读