mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 19:44:45 +08:00
添加 0202.快乐数.md Scala版本
This commit is contained in:
@ -385,5 +385,38 @@ bool isHappy(int n){
|
|||||||
return bHappy;
|
return bHappy;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
Scala:
|
||||||
|
```scala
|
||||||
|
object Solution {
|
||||||
|
// 引入mutable
|
||||||
|
import scala.collection.mutable
|
||||||
|
def isHappy(n: Int): Boolean = {
|
||||||
|
// 存放每次计算后的结果
|
||||||
|
val set: mutable.HashSet[Int] = new mutable.HashSet[Int]()
|
||||||
|
var tmp = n // 因为形参是不可变量,所以需要找到一个临时变量
|
||||||
|
// 开始进入循环
|
||||||
|
while (true) {
|
||||||
|
val sum = getSum(tmp) // 获取这个数每个值的平方和
|
||||||
|
if (sum == 1) return true // 如果最终等于 1,则返回true
|
||||||
|
// 如果set里面已经有这个值了,说明进入无限循环,可以返回false,否则添加这个值到set
|
||||||
|
if (set.contains(sum)) return false
|
||||||
|
else set.add(sum)
|
||||||
|
tmp = sum
|
||||||
|
}
|
||||||
|
// 最终需要返回值,直接返回个false
|
||||||
|
false
|
||||||
|
}
|
||||||
|
|
||||||
|
def getSum(n: Int): Int = {
|
||||||
|
var sum = 0
|
||||||
|
var tmp = n
|
||||||
|
while (tmp != 0) {
|
||||||
|
sum += (tmp % 10) * (tmp % 10)
|
||||||
|
tmp = tmp / 10
|
||||||
|
}
|
||||||
|
sum
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
-----------------------
|
-----------------------
|
||||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||||
|
Reference in New Issue
Block a user