"Java算法经典面试必备,代码实现字符串组合输出"
需积分: 0 149 浏览量
更新于2024-03-13
收藏 227KB DOC 举报
Java算法在面试中是一个必备的技能,因为它涵盖了许多经典的算法问题。其中一个比较经典的Java算法是给定三个字符a、b、c,写一个函数来输出这三个字符的所有可能排序组合。下面是一个示例代码:
```java
import java.util.ArrayList;
import java.util.List;
public class NumTest {
public static void main(String[] args) {
String s = "ABC";//原字符串
List<String> result = list(s, "");//列出字符的组合,放入 result
System.out.println(result.size());;
System.out.println(result);
}
/**
* 列出基础字符串(base)的所有组合
* @param base 以该字符串作为基础字符串,进行选择性组合。
* @param buff 所求字符串的临时结果
* @param result 存放所求结果
*/
public static List<String> list(String base,String buff){
List<String> result = new ArrayList<String>();
if(base.length() == 0){
result.add(buff);
}
for(int i=0; i<base.length(); i++){
result.addAll(list(new StringBuilder(base).deleteCharAt(i).toString(),
buff + base.charAt(i)));
}
return result;
}
}
```
这段代码的作用是将给定的字符串 "ABC" 的所有可能排序组合输出,包括 abc、acb、bac、bca、cab、cba。这是一个比较经典的算法问题,在面试中经常会被问到,因此有机会的同学可以参考这段代码进行学习。
总的来说,Java算法是面试中的一个重要技能,掌握经典的算法问题对于应聘者来说是必不可少的。通过学习和理解这些经典算法问题,并且能够灵活运用到实际的编程中,可以帮助我们在面试中更加游刃有余地回答问题,展现出自己的技术能力和解决问题的思维能力。希望以上内容能对大家有所帮助。
124 浏览量
2010-04-02 上传
点击了解资源详情
点击了解资源详情
140 浏览量
点击了解资源详情
102 浏览量
急速行驶
- 粉丝: 0
- 资源: 4