279. 完全平方数 golang BFS
生活随笔
收集整理的這篇文章主要介紹了
279. 完全平方数 golang BFS
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
給定正整數 n,找到若干個完全平方數(比如 1, 4, 9, 16, …)使得它們的和等于 n。你需要讓組成和的完全平方數的個數最少。
示例 1:
輸入: n = 12
輸出: 3
解釋: 12 = 4 + 4 + 4.
示例 2:
輸入: n = 13
輸出: 2
解釋: 13 = 4 + 9.
圖解
解法
func numSquares(n int) int {dp:=make([]int,n+1)for i:=1;i<=n;i++{dp[i]=ifor j:=1;i-j*j>=0;j++{dp[i]=min(dp[i],dp[i-j*j]+1)}}return dp[n] } func min(x ,y int)int{if x>y{return y}return x }DFS解法
code
使用隊列存儲元素,然后將第二列數組存儲隊列,直到有0,輸出level。來源圖中
總結
以上是生活随笔為你收集整理的279. 完全平方数 golang BFS的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 22. 括号生成 golang 图解
- 下一篇: 地下城什么时候出85