算法第二十一天-丑数

丑数

题目要求

解题思路

首先判断数字是不是为0或者负数,两者均不可能成为丑数;

之后对n进行不断整除,直到无法除尽为止。

简单判断最后的数是不是1即可。

代码

python 复制代码
class Solution:
    def isUgly(self, n: int) -> bool:
        if n<=0:
            return False
        if n <= 0:
            return False
        while n % 2 == 0:
            n //= 2
        while n % 3 == 0:
            n //= 3
        while n % 5 == 0:
            n //= 5
        return n == 1

复杂度分析

时间复杂度: O ( l o g n ) O(log n) O(logn)

空间复杂度: O ( 1 ) O(1) O(1)

相关推荐
代码AI弗森13 小时前
Python × NumPy」 vs 「JavaScript × TensorFlow.js」生态全景图
javascript·python·numpy
被AI抢饭碗的人13 小时前
算法题(246):负环(bellman_ford算法)
算法
paid槮14 小时前
Shell编程基本介绍
python
渣渣盟14 小时前
探索Word2Vec:从文本向量化到中文语料处理
前端·javascript·python·文本向量化
天天进步201514 小时前
Python全栈项目--基于计算机视觉的车牌识别系统
开发语言·python·计算机视觉
大数据张老师14 小时前
数据结构——折半查找
数据结构·算法·查找·折半查找
软件开发技术深度爱好者14 小时前
使用Python实现播放“.gif”文件增强版
开发语言·python
熬了夜的程序员15 小时前
【LeetCode】87. 扰乱字符串
算法·leetcode·职场和发展·排序算法
感哥15 小时前
Django Model高级特性
python·django
李辉200315 小时前
Python简介及Pycharm
开发语言·python·pycharm