丑数-直观简单的求法
来源:互联网 发布:java什么是逻辑或 编辑:程序博客网 时间:2024/04/30 18:24
packagecom.ytx.time_and_space;
importjava.util.Scanner;
/**
* 直观简洁的求解丑数的方法
* 但是时间效率太低了,对每个数字
* 都需要判断是不是丑数,对它执行求余数和除法操作
*@authoryuantianxin
*
*/
publicclassUglyNumber_simple {
publicbooleanisUglyNumber(intnum) {
while(num% 2 == 0)
num/= 2;
while(num% 3 == 0)
num/= 3;
while(num% 5 ==0)
num/= 5;
return(num==1) ?true: false;
}
publicintgetUglyNumber(intn) {
if(n<= 0) {
return0;
}
intnumber= 0;
intcount= 0;//表示这是第几个丑数的计数器,初始为零
while(count< n) {
number++;//从1开始找丑数,习惯上把1作为第一个丑数
if(isUglyNumber(number)) {//判断是不是丑数,是的话,计数器加一
count++;
}
}
//返回第n个丑数
returnnumber;
}
publicstaticvoidmain(String[]args) {
Scannerreader= new Scanner(System.in);
UglyNumber_simpleob=newUglyNumber_simple();
while(reader.hasNextInt()) {
intdata= reader.nextInt();
System.out.println("第"+ data + "丑数为 : " + ob.getUglyNumber(data));
}
}
}
阅读全文
0 0
- 丑数-直观简单的求法
- 关于组合数求法的简单记录
- 数素的求法
- 水仙花数的求法
- 逆序数的求法
- 逆序数的求法
- 丑数的处理
- 丑数的求解
- 丑数的问题
- 丑数的思想
- 丑数 简单的优先队列和set
- ARMStrong数求法的改进
- Smith(史密斯)数的求法
- C++水仙花数的求法
- 组合数简单求法(数论)
- 300内的丑数
- 丑数求解以及丑数的优化
- Ugly Number 寻找丑数 简单题
- 这个多出来的符号哪里来的?
- 人生的第一个springboot入门项目
- [算法]回溯法
- 第一讲:操作系统概述
- 擁有3D視覺功能的掌機Nintendo 3DS
- 丑数-直观简单的求法
- Android studio中出现DELETE_FAILED_INTERNAL_ERROR Error while Installing APKs
- 最短路径问题
- 《你不知道的javascript》阅读笔记(上卷第一部分)
- MyBatis中 #{} 和 ${} 的区别和用法
- 1.0 Java内存区域
- C++学习->友元
- canvas绘制五星红旗
- Hadoop之旅(9)— Hbase 教程与shell实战操作