/**
* 递归函数 : 在函数中再次调用自己
* 注意:容易产生死循环
*
* 适用于解决: 能把大问题,拆分成小问题的问题
**/
object DIGUI {
// 1. 求 1 + 2 + 3 +........ + n-1 + n 。 记为f(n) 表示1-n的和。
// 2. f(n) = 1 + 2 + 3 +.... n-1 + n
// (1)基本情况。 可以直接求解,避免死循环。 f(1)=1
// (2)递归情况。大事化小,递归求解。 f(n) = f(n-1) + n
// getSum(n) 计算1-n的和
def getSum(n : Int):Int={
if (n==1){
1
} else {
getSum(n-1)+n
}
}
def main(args: Array[String]): Unit = {
val s = getSum(3) // 6
println(s)
}
}
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.youkuaiyun.com/a1199a/article/details/142657121