算法第二十一天-丑数

丑数

题目要求

解题思路

首先判断数字是不是为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)

相关推荐
Splendid1 分钟前
Geneformer:基于Transformer的基因表达预测深度学习模型
javascript·算法
愿所愿皆可成15 分钟前
机器学习之聚类Kmeans算法
算法·机器学习·kmeans·聚类
幻奏岚音15 分钟前
统计学(第8版)——假设检验学习笔记(考试用)
笔记·学习·算法
咖啡配辣条18 分钟前
Python基础09
python
超大力王19 分钟前
DAY 45 超大力王爱学Python
开发语言·python
林-梦璃20 分钟前
Python开发基础手语识别(基础框架版)
开发语言·python·手语识别
hie9889434 分钟前
基于matlab策略迭代和值迭代法的动态规划
算法·动态规划
Coovally AI模型快速验证36 分钟前
SFTrack:面向警务无人机的自适应多目标跟踪算法——突破小尺度高速运动目标的追踪瓶颈
人工智能·神经网络·算法·yolo·计算机视觉·目标跟踪·无人机
Brduino脑机接口技术答疑37 分钟前
脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
人工智能·算法·脑机接口·新手入门
RockyRich1 小时前
突然无法调用scikit-learn、xgboost
python·机器学习·scikit-learn