由于各大平台的算法题的解法很少有Swift的版本,小编这边将会出个专辑为手撕LeetCode算法题。新手撕算法。请包涵!!!这次解的超级烂,只是要下班了,不想在动🧠脑子了。
给定一个整数 n ,返回 n! 结果中尾随零的数量。
提示 n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1
示例 1:
输入:n = 3
输出:0
解释:3! = 6 ,不含尾随 0
示例 2:
输入:n = 5
输出:1
解释:5! = 120 ,有一个尾随 0
示例 3:
输入:n = 0
输出:0
Swift解法如下:
class Solution {
func trailingZeroes(_ n: Int) -> Int {
var result = 0
var num = n
while(num != 0){ //因为10只能由2和5组成 所有只要统计有多少个5就好
num /= 5
result += num
}
return result
}
}
这里用到了数学的知识,因为10只能被2或者5整除