Swift.打印1到最大的n位数

题目描述:输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数即 999。import Foundation class For12Solution { func printMax(_ n: Int) { var nums = Array(repeating: "0", count: n) while !incrementNumber(&nums) { print(printPreString(nums.joined())) ...

LeetCode 2015-07-07 PM 405℃ 0条

Swift.数值的整数次方

题目描述:给定一个 double 类型的浮点数 base 和 int 类型的整数 exponent,求 base 的 exponent 次方。import Foundation class For11Solution { func power(_ b: Double,_ e: Int) -> Double { var base = b var exponent = 0 if e > 0 { exponent = e }else if e <...

LeetCode 2015-07-07 PM 702℃ 0条

Swift.求1+2+...+n

题目描述:求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。import Foundation class For46Solution { func addSum(_ num: Int) -> Int { var res = 0 num>0 && (res = num + addSum(num - 1)) == () return res } }算法思想:累加不能用循环的话,那就试试递归...

LeetCode 2015-07-06 PM 369℃ 0条

Swift.二进制中1的个数

题目描述:输入一个整数,输出该数二进制表示中 1 的个数。class For10Solution { func findOne(_ n: Int) -> Int { var s = n var count = 0 while s != 0 { if s & 1 == 1 { count += 1 } s = s>>1 } ...

LeetCode 2015-07-05 PM 470℃ 0条

Swift.斐波那契额数列

题目描述:求斐波那契数列的第 n 项。import Foundation class For09Solution { func Fibonacci(_ n: Int) -> Int { if n <= 0 { return 0 } if n == 1 { return 1 } if n > 1 { return Fibonacci(n-1) + Fibonacci(n-2)...

LeetCode 2015-07-04 PM 571℃ 0条