Swift algorithm practice

7. Reverse Integer

2019-01-25  本文已影响1人  d1497e8e780a

Swift 4.2

    func reverse(_ x: Int) -> Int {
    if x == 0 {
      return 0
    }
    var depth = 0
    var copyX = abs(x)

    var sum = 0
    while copyX > 9 {
      let remainder = copyX % 10
      copyX = copyX / 10
      depth += 1
      sum = (sum + remainder) * 10
    }
    sum = copyX + sum
    let limit = uint.max / 2 + 1
    if sum > limit {
      return 0
    }
    if  sum == limit && x > 0 {
      return 0
    }
    return x > 0 ? sum : -sum
  }
751548423935_.pic.jpg
上一篇 下一篇

猜你喜欢

热点阅读