高薪算法+计算机职称考试LeetCode算法提高之LeetCode刷题

LeetCode 231. 2的幂 Power of Two

2019-08-14  本文已影响0人  1江春水

【题目描述】
给定一个整数,编写一个函数来判断它是否是 2 的幂次方。

【示例1】

输入: 1
输出: true
解释: 20 = 1

【示例2】

输入: 16
输出: true
解释: 24 = 16

【示例3】

输入: 218
输出: false

【思路】
1、循环乘2
2、时间复杂度O(logn)
3、空间复杂度O(1)

Swift代码实现:

func isPowerOfTwo(_ n: Int) -> Bool {
    if n == 1 {
        return true
    }
    var product = 1
    while product < n {
        product*=2
    }
    return product == n
}

后续会继续更新文章,也可以关注我的公众号,基本每日一题🙂:


个人公号.jpg
上一篇下一篇

猜你喜欢

热点阅读