zoukankan      html  css  js  c++  java
  • Java实现字符全阵列阵列

    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);
    	}
    }

    执行測试。输出结果:

    abc
    acb
    bac
    bca
    cba
    cab


    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    vue 響應接口
    vue ajax
    vue混入
    vue動畫和過渡
    vue路由
    vue自定義指令
    python项目_使用极验验证码
    python项目_使用异步功能,celery
    python项目_集成短信发送功能
    python项目_redis使用
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4914501.html
Copyright © 2011-2022 走看看