题目

如题,输入n,则从1打印至99.

题解

考虑到n比较大会有大数问题,所以使用字符数组存储数。

由题可用递归求n位全排列,即为所得。

具体地,用临时字符数组用来存答案,每次递归填好一位,都填好后输出。

代码

import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
int n=s.nextInt();
printToN(n);
} public static void printToN(int n) {
char[] num=new char[n];
composeNum(num,0,num.length);
} //len位全排列
private static void composeNum(char[] num,int pos,int len) {
if(pos==len) {//此位不需要再填,输出此时num即为所得
printDelZero(num);
}
else {
for(int i=0;i<10;++i) {
num[pos]=(char) (i+'0');
composeNum(num,pos+1,len);
}
}
} //删除前面的0
private static void printDelZero(char[] num) {
int pos=0;
for(;pos<num.length;++pos) {
if(num[pos]!='0') {
break;
}
}
for(int i=pos;i<num.length;++i) {
System.out.print(num[i]);
}
System.out.print("\n");
}
}

最新文章

  1. SSH实战 &#183; 唯唯乐购项目(下)
  2. gulp之压缩合并MD5清空替换加前缀以及自动编译自动刷新浏览器大全
  3. [mysql] Some non-transactional changed tables couldn&#39;t be rolled back
  4. centos安装youcompleteme
  5. jquery uploadify 进入页面请求两次问题解决办法。
  6. django默认开事务的麻烦事
  7. nginx缓存优先级(缓存问题者必看)
  8. iOS_SN_UITableView的优化
  9. iOS学习心得——UINavigationController
  10. Python中进行Base64编码和解码
  11. 微信移动支付V3开发详细教程服务端采用.net mvc webapi(C#)
  12. HTML阶段总结
  13. bootstrap select2 使用简单介绍
  14. Logistic Regression vs Naive Bayes
  15. iOS字符串自动计算文本的宽和高
  16. Django ListView实现分页
  17. python3 urllib及requests基本使用
  18. MT【28】内心外衣下的等腰三角形个数
  19. 2.ECS内 经典网络与VPC网络的区别
  20. Mysql删除所有表

热门文章

  1. gcc手动安装
  2. 在KVM主机和虚拟机之间共享目录
  3. CentOS 安装、配置Nginx反向代理
  4. qemu-img check命令详解
  5. Java算法——分治法
  6. jmeter http并发测试时报错
  7. 力扣Leetcode 45. 跳跃游戏 II - 贪心思想
  8. MSP430-LED中断闪烁代码详解
  9. Kubernetes K8S之通过yaml文件创建Pod与Pod常用字段详解
  10. android开发之edittext弹出输入框遮挡住文字。解决方法