Open
Description
I guess there is a minor error, in the dynamic programming for min coin change in chapter 14, in the function makeChange there is a for block:
for (let i = 0; i < coins.length; i++) {
const coin = coins[i];
newAmount = value - coin;
if (newAmount >= 0) {
newMin = makeChange(newAmount);
}
if (
newAmount >= 0
&& (newMin.length < min.length - 1 || !min.length)
&& (newMin.length || !newAmount)
) {
min = [coin].concat(newMin);
// console.log('new Min ' + min + ' for ' + amount);
}
}
where in the commented line
console.log('new Min ' + min + ' for ' + amount);
I suppose it is for printing each cycle of the algorithm according to the published book, however
it should not be 'amount' or 'newAmount' I think, instead,
console.log('new Min ' + min + ' for ' + value);
will be in line with the out print for each loop
Metadata
Metadata
Assignees
Labels
No labels