package kapitel_13 /** * Beispiel aus * * - Algorithmen und Datenstrukturen für Dummies * - von Andreas Gogol-Döring und Thomas Letschert * - Verlag Wiley-VCH; Oktober 2019 * - Kapitel 13, Dynamisches Programmieren * * @author A. Gogol-Döring, Th. Letschert */ object AuD_13_08_MinDP_App extends App { def min_1(a: Array[Int]): Int = { val n = a.length val min: Array[Int] = Array.ofDim(n) min(0) = a(0) if (n >1) for (i <- 1 until n) min(i) = Math.min(min(i-1), a(i)) min(n-1) } def min_2(a: Array[Int]): Int = { val n = a.length var min = a(0) if (n >1) for (i <- 1 until n) min = Math.min(min, a(i)) min } val a = Array(3,4,8,5,1,0,3,2,4,5,7) println(min_1(a)) // 0 println(min_2(a)) // 0 }