`

程序员面试题精选100题(38)-输出1到最大的N位数

阅读更多
题目:输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999。

此题考的是内存溢出问题的解决方案
000 ,001,002,...010...,999



char[] num = new char[n]; 

for(int i=0;i<10;i++){ //装配个位
   num[n-1]=Char.valueOf(i);
  print(num,n-2);
}

public void print(char[] num,int currIndex){
   if(currIndex==-1){
      boolean isFirst = true;
      for(int i=0;i<num.length;i++){
         if(num[i]==null||num[i]=='0'&&isFirst){
            continue;
         }else{
           System.out.print(num[i]);
        }
      }
      System.out.println();
     return;
   }

     for(int i=0;i<num.length;i++){
      num[currIndex]=Char.valueOf(i);
      print(num,currIndex-1);
   }
}
分享到:
评论

相关推荐

    大型公司程序员面试题

    1. **斐波那契数列**:这是一个典型的递归问题,斐波那契数列的第n位数F(n)可以通过前两位数F(n-1)和F(n-2)相加得到。递归算法可以这样表示: ```csharp int Fibonacci(int n) { if (n &lt;= 1) return n; return ...

    java程序员面试题算法

    【程序 1】:这是一个经典的斐波那契数列问题,也称为兔子繁殖问题。...这些算法题目涵盖了基础的数据结构、算法思想以及逻辑推理,是Java程序员面试中常见的问题,对于提升编程能力和解决问题能力具有很大帮助。

    程序员经典50题带分析

    3. **水仙花数**:三位数的每一位立方和等于其本身,通过循环100到999,计算每位数的立方和,若相等,则是水仙花数。 4. **分解质因数**:输入一个正整数n,分解其质因数。采用循环和判断素数的方法,从2开始尝试...

    oracle部分面试题-DBA数据库管理员JAVA程序员架构师必看.docx

    在这些面试题中,我们可以看到涉及Oracle数据库管理、SQL查询以及数据统计的多个知识点。下面分别解析各个面试题所涵盖的要点: 面试题一(厦门): 这些题目主要考察了Oracle中的子查询和集合操作。题目要求找出...

    2010锐捷 笔试面试题

    - 面试题往往考察细节和基础知识的掌握程度,如位运算、指针操作、数组和字符串处理等。 9. 编程挑战: - 打印N*N方阵:涉及循环嵌套,打印特定字符和递增数字。 - 函数调用:`fun`函数调用时,实参`a`和`b`的值...

    java最新面试题大全_1

    【Java最新面试题大全_1】的题目涵盖了多个IT领域,包括概率问题、数据库设计、SQL查询以及计算机体系结构的基础知识。以下是对这些知识点的详细解释: 1. **概率问题**: - 题目描述了一个有100个黑球和100个白球...

    C面试100题.pdf

    本知识点将围绕给定文件内容中提及的C语言面试题,对相关知识点进行详细说明。 1. 基本数据类型与“零值”比较的if语句:在C语言中,基本数据类型的零值比较通常涉及到布尔值bool、浮点数float以及指针。对于布尔值...

    JAVA经典算法50题(3)【面试+工作】.docx

    1. **递归公式:** `f(n) = f(n-1) * n` 2. **代码实现:** ```java public class Demo22 { public static long fac(int n) { long value = 0; if (n == 1 || n == 0) { value = 1; } else if (n &gt; 1) { ...

    50道编程题(有精力的同学看看)答案

    数列的规律是每一项都是前两项的和,即 `F(n) = F(n-1) + F(n-2)`。程序使用递归方法解决,但递归解法对于较大的n可能会导致效率低下,因为它会重复计算很多相同的子问题。更好的解决方案是使用动态规划,存储已计算...

    华为面试题

    当`v.c`被赋值为100时,根据二进制表示(`1100100`),可以看到最高3位(即`s3`对应的位置)的值为`010`,转换为十进制为4,故输出结果为4。这展示了位结构如何帮助我们精确控制数据的存储方式,尤其是在资源受限的...

    JAVA面试100题.pdf

    已检查异常通常由程序员通过`try-catch`块显式处理,而未检查异常(如`NullPointerException`)则通常表示程序逻辑错误,应避免发生。 ### 接口与虚类对比 在JAVA中,接口提供了多态性和松耦合性,允许一个类实现...

    java面试题

    使用`Math.round(value * 100) / 100`可以将浮点数`value`的小数点后位数保留到两位,并进行四舍五入。 ### 8. Java异常处理 `throws`用于声明方法可能抛出的异常;`throw`用于抛出异常;`try`块包含可能抛出异常...

    java面试 笔试

    6. **位运算**:在程序3(水仙花数)中,通过位运算求解三位数的各个位数,例如`bai = i / 100`用于获取百位数,`shi = (i / 10) % 10`获取十位数,`ge = (i % 100) % 10`获取个位数。 7. **逻辑判断**:在程序3中...

    c5.rar_水仙花数

    在实际编程中,"水仙花数"的问题也可以作为面试题,考察候选人的逻辑思维和问题解决能力。通过解决此类问题,程序员可以提升自己的算法设计和调试技巧,这些都是在软件开发中不可或缺的技能。 总结一下,水仙花数是...

    此文档是总结的C语言的笔试题

    根据给定文件的信息,我们可以提炼出以下几个重要的知识点: ### 一、C语言中与“零值”比较的if...综上所述,这些知识点涵盖了C语言中的一些基础概念和常见面试题目,帮助程序员更好地理解和掌握C语言的使用方法。

    JAVA经典算法42例.doc

    斐波那契数列是自然界中许多现象的基础模型,其数学表达形式为:F(n)=F(n-1)+F(n-2),其中F(1)=1,F(2)=1。在Java中,我们可以使用递归或循环的方式来实现斐波那契数列的生成,模拟兔子的繁殖规律。编写程序时要注意...

    net学习笔记及其他代码应用

    net的最近面试经典试题ASP.NET面试题集合 1. 简述 private、 protected、 public、 internal 修饰符的访问权限。 答 . private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中...

Global site tag (gtag.js) - Google Analytics