博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
输出字符串的所有排列组合情况
阅读量:6247 次
发布时间:2019-06-22

本文共 970 字,大约阅读时间需要 3 分钟。

hot3.png

先记录代码,是copy的,日后分析。

import org.junit.Test;    public class AllSort {        public void permutation(char[] buf, int start, int end) {          if (start == end) {// 当只要求对数组中一个字母进行全排列时,只要就按该数组输出即可              for (int i = 0; i <= end; i++) {                  System.out.print(buf[i]);              }              System.out.println();          } else {// 多个字母全排列              for (int i = start; i <= end; i++) {                  char temp = buf[start];// 交换数组第一个元素与后续的元素                  buf[start] = buf[i];                  buf[i] = temp;                    permutation(buf, start + 1, end);// 后续元素递归全排列                    temp = buf[start];// 将交换后的数组还原                  buf[start] = buf[i];                  buf[i] = temp;              }          }      }        @Test      public void testPermutation() throws Exception {          char[] buf = new char[] { 'a', 'b', 'c' };          permutation(buf, 0, 2);      }  }

 

转载于:https://my.oschina.net/u/3192601/blog/1422803

你可能感兴趣的文章
oracle软件安装完毕之后,如何创建数据库
查看>>
『MXNet』第三弹_Gluon模型参数
查看>>
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP...
查看>>
Configuring Apache Kafka for Performance and Resource Management
查看>>
excel 截取单元格部分内容(从指定位置截取)
查看>>
Email-ext plugin
查看>>
绝对干货,教你4分钟插入1000万条数据到mysql数据库表,快快进来
查看>>
文件系统
查看>>
Android模拟器Genymotion安装apk
查看>>
chrome使用技巧(看了定不让你失望)
查看>>
数据字典
查看>>
Laravel Model 的 fillable (白名单)与 guarded (黑名单)
查看>>
idea激活
查看>>
Presto 性能优化点
查看>>
Key Lookup开销过大导致聚集索引扫描
查看>>
CSS 中的字体兼容写法:用CSS为英文和中文字体分别设置不同的字体
查看>>
Java全栈程序员之04:Ubuntu下安装MySQL、注册服务及Navcat
查看>>
读吴恩达算-EM算法笔记
查看>>
Bug是一种财富-------研发同学的错题集、测试同学的遗漏用例集
查看>>
Spring1:Spring简介、环境搭建、源码下载及导入MyEclipse
查看>>