用递归输出一维数组的全排列
来源:互联网 发布:淘宝规则 新规 编辑:程序博客网 时间:2024/05/29 17:53
public class CharOrder {
//交换函数
public static void swap(char[] list,int k,int i){
char temp=list[i];
list[i]=list[k];
list[k]=temp;
}
//
public static void pailie(char[] list,int k,int m){
if(k==m){//list数组中只剩下一个元素
for(int i=0;i<=m;i++){
System.out.print(list[i]);}
System.out.print(" ");
}
else{
for(int i=k;i<=m;i++){//作为最外围的for循环
swap(list,k,i);
pailie(list,k+1,m);//递归
swap(list,k,i);//返回原先位置,防止输出重复的数组
}
}
}
}
class Main2{
public static void main(String args[]){
char list[]={'a','b','c'};
//CharOrder order=new CharOrder();
int k=0,m=2;
CharOrder.pailie(list, k, m);
}
}
如,若分别输入a,b,c 则输出
abc acb bac bca cba cab
1 0
- 用递归输出一维数组的全排列
- 递归思想输出数组全排列
- 用递归的思想输出一个数组的全排列,和组合
- 递归输出全排列
- 递归 输出全排列
- Java用递归实现的数组的全排列
- 输出数组全排列
- 用递归对数组进行全排列
- 递归输出char数组的所有排列
- 输出数组的全排列方法
- JAVA递归和非递归输出字符串的全排列
- 递归复习,递归输出字符串的全排列
- 输出全排列--循环+递归
- 利用递归输出全排列
- 非递归数组全排列
- 递归实现数组全排列
- 数组全排列递归实现
- 输出全排列(递归&非递归)
- request库的补充知识
- Tiling
- Node.js 模块之【mongoose】MongoDB操作模块
- 深度学习培训班路线
- 无网络不生活,给您讲述会说话的无线wifi
- 用递归输出一维数组的全排列
- 重复索引与冗余索引
- java.lang.IllegalArgumentException org.springframework.asm.ClassReader.
- 位运算
- LA4287 Proving Equivalences 强连通分量
- 基于How To Tango With Django 1.9的重新实践(11)——User Authentication with {#chapter-redux}
- PHP总结日记2(php课程精炼)!
- 算法导论 练习题 2.3-7
- 正则表达式在Android中的使用