leetcode刷题感悟第1天 丑数

 

问题描述 :

给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。

丑数 就是只包含质因数 2、3 和/或 5 的正整数。

代码:

class Solution {
    public boolean isUgly(int n) {
        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;
    }
}
其中值得注意的 复合运算符
  java中*=为乘后赋值运算符,是一个复合赋值运算符。i*=n相当于i=i*n。复合赋值运算符,也称为赋值缩写,带有运算的赋值运算符。共有10种这样的运算符,它们是:+= 加赋值,-= 减赋值,*= 乘赋值,/= 除赋值,%= 求余赋值,&= 按位与赋值,| = 按位或赋值,^= 按位异或赋值,<<= 左移位赋值,>>= 右移位赋值。复合赋值运算举例:a+=2 即为a=a+2x*=y 即为x=x*y
posted @ 2021-04-15 21:36  ash98  阅读(96)  评论(0)    收藏  举报