0
Ich habe ein scala Code wie diese suchenErhöhung Zähler in für Schleife
object Main {
def countChangeIter(money: Int, coins: List[Int], counter: Int): Int=
if (money == 0) 1
else if (money < 0) 0
else {
for (i <- coins.indices) {
counter = counter + countChangeIter(money - coins(i), coins.drop(i), 0)
}
return counter
}
def countChange(money: Int, coins: List[Int]): Int = countChangeIter(money, coins, 0)
}
Das Problem mit der counter = counter...
Aussage. Wie kann ich implementieren, dass der Zähler sich um die Summe des alten Zählers ändert und was auch immer countChangeIter zurückgibt?
vielen Dank c14
Können Sie ein von Ihnen erwartetes Beispiel veröffentlichen? – mickaelw
Es gibt viel mehr Probleme hier als nur versuchen, ein "val" zu verwenden, als ob es eine 'var' wäre. Wenn 'money == 0 'gibt man' counter' zurück, nicht '1'. Gleiches mit, wenn 'Geld <0'. Wenn Sie versuchen zu zählen, auf wie viele verschiedene Arten eine Sammlung von Münzen eine Zielsumme erreichen kann, ist dieser Algorithmus nicht einmal knapp. – jwvh