当前位置: 首页 > 后端技术 > Java

JZ-027-字符串排列

时间:2023-04-01 20:37:19 Java

字符串排列题目描述输入一个字符串,打印出该字符串中所有字符的字典顺序排列。例如,输入字符串abc,则打印出字符a、b、c按字典顺序排列的所有字符串abc、acb、bac、bca、cab、cba。题目链接:字符串排列代码importjava.util.ArrayList;importjava.util.Arrays;/***标题:字符串排列*标题描述*输入一个字符串,并按字典顺序打印出该字符串的所有字符排列。例如,输入字符串abc,*则打印出字符a、b、c按字典顺序排列的所有字符串abc、acb、bac、bca、cab、cba。*题目链接:*https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&&tqId=11180&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking*/publicclassJz27{privateArrayListret=newArrayList<>();publicArrayListpermutation(Stringstr){if(str.length()==0){returnret;}char[]chars=str.toCharArray();数组排序(字符);回溯(字符,新布尔值[chars.length],新StringBuilder());返还;}privatevoidbacktracking(char[]chars,boolean[]hasUsed,StringBuilders){if(s.length()==chars.length){ret.add(s.toString());返回;}for(inti=0;iresult=jz27.permutation("abcdee");System.out.println("大小:"+result.size());for(inti=0;i