java 面试-请问这道面试题的解决思路是什么?

问题描述

请问这道面试题的解决思路是什么?

题目:把一个数组里的数组合全部列出

代码是:
[code=java]public class Test7_1_1 {
public static void main(String[] args) throws Exception{
String[] array=new String[]{
"1","2","3","4"
};
listAll(Arrays.asList(array),"");
}
public static void listAll(List candidate,String prefix){
System.out.println(prefix);

    for(int i=0;i<candidate.size();i++){
        List temp=new LinkedList(candidate);
        listAll(temp,prefix+temp.remove(i));
    }
}

}[/code]

书上没有讲解,我对这个问题的解决思路无法理解。
哪位大神能给我讲讲解决思路?

解决方案

利用递归,逐步分解,最后求得所有组合

时间: 2024-09-19 20:40:39

java 面试-请问这道面试题的解决思路是什么?的相关文章

Java面试笔试题大汇总(最全+详细答案)

声明:有人说, 有些面试题很变态,个人认为其实是因为我们基础不扎实或者没有深入.本篇文章来自一位很资深的前辈对于最近java面试题目所做的总结归纳,有170道题目 ,知识面很广 ,而且这位前辈对于每个题都自己测试给出了答案 ,如果你对某个题有疑问或者不明白,可以电脑端登录把题目复制下来然后发表评论,大家一起探讨,也可以电脑端登录后关注我给我发私信,我们一起进步! 以下内容来自这位前辈 2013年年底的时候,我看到了网上流传的一个叫做<Java面试题大全>的东西,认真的阅读了以后发现里面的很多题

设计-请问这道测试面试题怎么做?有哪位大神能告诉我吗????非常感谢!

问题描述 请问这道测试面试题怎么做?有哪位大神能告诉我吗????非常感谢! Background: As a airline company, I've cooperated with some car companies as my partner. The user can get discount if they book the car after booking our airline tickets. Therefore, in our airline app, we support

java 多维数组-java多维数组,请问出错在哪,怎么解决

问题描述 java多维数组,请问出错在哪,怎么解决 package dimension; import java.util.Scanner; public class dimension714 { public static void main(String[] args) { System.out.print("Enter the size for the matrix "); Scanner input = new Scanner(System.in); int num = inp

Java面试题目集锦_java

1.equals方法用于比较对象的内容是否相等(覆盖以后) 2.hashcode方法只有在集合中用到 3.当覆盖了equals方法时,比较对象是否相等将通过覆盖后的equals方法进行比较(判断对象的内容是否相等). 4.将对象放入到集合中时,首先判断要放入对象的hashcode值与集合中的任意一个元素的hashcode值是否相等,如果不相等直接将该对象放入集合中.如果hashcode值相等,然后再通过equals方法判断要放入对象与集合中的任意一个对象是否相等,如果equals判断不相等,直接

java web模拟word考试系统如何解决对word操作的自动判断问题?

问题描述 java web模拟word考试系统如何解决对word操作的自动判断问题? 这个考试系统是关于计算机基础的,现在大学生考试都是上机考,会考查word.Excel的操作题,每道题会规定你做哪些操作,比如:word中,字体都用黑色?8号宋体,等等然后系统可以自动评阅.请问该如何去做? ? 解决方案 用poi库读取word文件解析http://haohaoxuexi.iteye.com/blog/2031335

java面试常见问题之Hibernate总结_java

主要从以下十几个方面对Hibernate做总结,包括Hibernate的检索方式,Hibernate中对象的状态,Hibernate的3种检索策略是什么,分别适用于哪种场合,ORM解决的不匹配问题, Hibernate映射继承关系的3种方式,Session的find()方法以及Query接口的区别等方面问题的总结,具体内容如下: 1  Hibernate的检索方式 Ø  导航对象图检索(根据已经加载的对象,导航到其他对象.) Ø  OID检索(按照对象的OID来检索对象.) Ø  HQL检索(使

java程序员笔试面试题

问题描述 1.面向对象的特征有哪些方面(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过程抽象,二是数据抽象.(2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派生类可以

JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结(转)

hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和学习,使自己在做项目中更加得心应手. 第一方面:开发速度的对比 就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些.Mybatis框架相对简单很容易上手,但也相对简陋些.个人觉得要用好Mybatis还是首先要先理解好Hibernate. 比起两者的开发速度,不仅仅要考虑到两者的特性及性能,更要根据项目需求

java基础小问题 ...-java基础api小问题随便给解决一下

问题描述 java基础api小问题随便给解决一下 string a="csagmtacsmgtcs";问计算cs的个数求大神代码 解决方案 Pattern p = Pattern.compile("cs"); Matcher m = p.matcher("csagmtacsmgtcs"); int sum = 0; while(m.find()) { sum ++; } System.out.println(sum); 解决方案二: 给楼上补下