本篇文章为大家展示了Java中怎么实现一个字典生成算法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
class CreateDic{ private int BitNum; private String Str; public void SetBitNum(int num) { BitNum=num; } public void SetStr(String str) { Str=str; } public int GetBitNum(){ return BitNum; } public String GetStr(){ return Str; } public List<String> GetDic(){ int[] tmparray=new int[BitNum]; List<String> final_list=new ArrayList<String>(); String result=""; for(int i=0;i<BitNum;i++) tmparray[i]=0; int nCount=0; while(true) { result=""; for(int i=0;i<BitNum;i++) { result+=Str.charAt(tmparray[i]); } nCount++; System.out.println(result); final_list.add(result+"\r\n"); //开始进行下一轮循环 int length=Str.length(); int mark=0; for(int j=BitNum-1;j>=0;j--) { if(tmparray[j]==length-1){ if(j!=0){ continue; } else{ mark=1; break; } } else{ tmparray[j]++; for(int k=j+1;k<BitNum;k++) { tmparray[k]=0; } break; } } if(mark==1){ break; } } System.out.println("一共输出密码个数:"+nCount); return final_list; } }
可以这么说如若组成密码的字符一共有3个分别是"abc",而密码长度是6,则BitNum可以设置为6 而Str的内容则为“abc”,这样可以获得所有可能组成的密码字符串即为返回值
上述内容就是Java中怎么实现一个字典生成算法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。