打印小于n位的所有数字
程序员文章站
2024-03-16 16:09:28
...
package com.dugstudio.SwordToOfferBook.Singleton.Interview;
/**
* @Author JH
* @CreateDate 18-6-8
* @Descriptionv 从1 打印n位数 eg:1,2,3...,999...999
*/
public class Print1ToMaxOfNDigits {
public void Print1ToMaxOfNDigits(int n) {
byte number[] = new byte[n];
for (byte i = 0; i < 10; i++) {
number[0]=i;
Print1ToMaxOfNDigitsByRecrusive(number, n, 0);
}
}
public void Print1ToMaxOfNDigitsByRecrusive(byte [] number ,int len, int index){
if (index==len-1){
printNumber(number);
return ;
}
for (byte i=0;i<10;i++){
number[index+1]=i;
Print1ToMaxOfNDigitsByRecrusive(number,len,index+1);
}
}
//从左第一位非0位至右打印
public void printNumber(byte[] number){
boolean flag=false;
for (byte b:number
) {
if (b!=0)flag=true;
if (flag){
System.out.print(b);
}
}
System.out.println();
}
public static void main(String[] args) {
Print1ToMaxOfNDigits p=new Print1ToMaxOfNDigits();
p.Print1ToMaxOfNDigits(3);
}
}
上一篇: 二进制表示中 1 的个数
下一篇: Egret 图片移动至鼠标点击位置
推荐阅读
-
输出6位数字以内的,各位数字之和为16的所有整数,并统计所有符合条件的整数的个数
-
输出10到99之间各位数字之和为12的所有整数。要求定义和调用函数sumdigit(n)计算整数n的各位数字之和。
-
打印小于n位的所有数字
-
求数字:输入一个整数n,输出100(含100)-999(含999)之间所有各位数字之和等于n的数。
-
求m n之间所有能 被三整除,且至少有一位数字为5的整数
-
算法-打印出N内的所有质数
-
Java编程题库 | 打印所有不重复的3位数
-
剑指offer--位运算--打印1到最大的n位数
-
LeetCode:求小于n的所有的质数
-
LeetCode 204[Python]. 计数质数 统计所有小于非负整数 n 的质数的数量。 示例 1: 输入:n = 10 输出:4