一著名软件公司的java笔试算法题!(我自己的解法)
来源:互联网 发布:剑三捏脸数据成男网盘 编辑:程序博客网 时间:2024/04/28 12:48
一著名软件公司的java笔试算法题!
算法程序题:
该公司笔试题就1个,要求在10分钟内作完。
题目如下:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。
package mu.orderstr;
import java.util.ArrayList;
import java.util.List;
public class GetAll {
List list=new ArrayList();
public GetAll(){
list.add("22");
}
public void AllOrder(String str){
List listlin=new ArrayList();
for(int i=0;i<list.size();i++){
String nstr=(String )list.get(i);
nstr=str+nstr;
String cmpstr=nstr;
listlin.add(nstr);
nstr=ChangeStr(nstr);
while(!cmpstr.equals(nstr)){
listlin.add(nstr);
nstr=ChangeStr(nstr);
}
}
list.clear();
list.addAll(listlin);
}
public void OutAll(){
//过虑
for(int j=0;j<list.size();j++){
String outstr=(String)list.get(j);
if((outstr.indexOf("3")+1==outstr.indexOf("5")) || (outstr.indexOf("3")-1==outstr.indexOf("5"))||(outstr.indexOf("4")==2))
continue;
System.out.println("-----------"+outstr);
}
}
public String ChangeStr(String str){
char arr[]=str.toCharArray();
char first=arr[0];
str=str.substring(1,str.length())+first;
return str;
}
public static void main(String args[]){
GetAll getall=new GetAll();
getall.AllOrder("1");
getall.AllOrder("3");
getall.AllOrder("4");
getall.AllOrder("5");
getall.OutAll();
}
}
- 一著名软件公司的java笔试算法题!(我自己的解法)
- 一著名软件公司的java笔试算法题的答案
- 一著名软件公司的java笔试算法题的答案
- 一著名软件公司的java笔试算法题的答案
- 一著名软件公司的java笔试算法题的答案
- 一著名软件公司的java笔试算法题的答案
- Re: 一著名软件公司的java笔试算法题!
- Re: 一著名软件公司的java笔试算法题!
- 一著名软件公司的java 笔试算法题
- 一著名软件公司的java笔试算法题
- 一著名软件公司的java笔试算法题!
- 一著名软件公司的java笔试算法题!
- 一著名软件公司的java笔试算法题
- 著名软件公司的java笔试算法题及解答
- 用AS完成的一著名软件公司的java笔试算法题!
- 一著名软件公司的java笔试算法题的答案(转)
- 一软件公司的笔试题
- 某软件公司的英文Java笔试题(网络笔试)
- 高质量C++/C编程指南 -- 第5章 常量
- [转bingle文章]创建SVCHOST.EXE调用服务的原理与实践!
- 2006年9月13日星期五
- 处理重复记录的次数,重复一次的用A,其次用B,依次。。。。
- 女星长发如雪 上演现代版白发魔女传(组图)
- 一著名软件公司的java笔试算法题!(我自己的解法)
- 如何将PHP的数组转化成对象
- 许巍-完美生活
- 博客中的rss有什么用?
- C#
- 加入@PASSION
- PHP中的异常处理对程序执行效率的影响
- C语言中的位域
- JAVA翻译给定中文字符串的拼音首字母