题解 | #反转链表#

兑换零钱(一)

http://www.nowcoder.com/practice/3911a20b3f8743058214ceaa099eeb45

/**

  • 最少货币数

  • @param arr int整型一维数组 the array

  • @param aim int整型 the target

  • @return int整型 */ function minMoney( arr , aim ) { // write code here // 这本质上是一个完全的背包问题--使用动态规划完成。 let n = arr.length; let f = new Array(aim+1).fill(Infinity); f[0] = 0;

    for(let i = 0;i<n;i++){ for(let j = arr[i];j<=aim;j++){ f[j] = Math.min(f[j],f[j-arr[i]]+1); } } return f[aim] === Infinity ? -1:f[aim]

} module.exports = { minMoney : minMoney };

全部评论

相关推荐

LemontreeN:有的兄弟有的我今天一天面了五场,4个二面一个hr面
投递字节跳动等公司8个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务