博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
组合问题, 给定字符集,输出特定长度的字符组合。
阅读量:6083 次
发布时间:2019-06-20

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

hot3.png

问题描述:假设字符集为'ABCDE',  打印出取出三个字符的组合。

 

import java.util.ArrayList;import java.util.List;public class Test {		static String s = "ABCDE";    public static int c(int n, int k){    	if( n == k || k == 0){    		return 1;    	}else if( k == 1){    		return n;    	}else{    		return c(n - 1, k - 1) + c(n -1 , k);    	}    }        public static void main(String args[]){    	List
ls = myCprint(s, 2); for(String str : ls){ System.out.println(str); } } public static List
myCprint(String str, int k){ List
tmp = new ArrayList
(); if(str.length() == k || k == 0){ tmp.add(str); }else if(k == 1){ for(char c : str.toCharArray()){ tmp.add(String.valueOf(c)); } } else{ List
tmp1 = myCprint(str.substring(0, str.length() - 1), k - 1); for(String str1 : tmp1){ tmp.add(str.substring(str.length() - 1) + str1); } tmp.addAll(myCprint(str.substring(0, str.length() - 1), k)); } return tmp; }}

 

转载于:https://my.oschina.net/u/138995/blog/86650

你可能感兴趣的文章
【框架整合】Maven-SpringMVC3.X+Spring3.X+MyBatis3-日志、JSON解析、表关联查询等均已配置好...
查看>>
要想成为高级Java程序员需要具备哪些知识呢?
查看>>
带着问题去学习--Nginx配置解析(一)
查看>>
onix-文件系统
查看>>
java.io.Serializable浅析
查看>>
我的友情链接
查看>>
多线程之线程池任务管理通用模板
查看>>
CSS3让长单词与URL地址自动换行——word-wrap属性
查看>>
CodeForces 580B Kefa and Company
查看>>
开发规范浅谈
查看>>
Spark Streaming揭秘 Day29 深入理解Spark2.x中的Structured Streaming
查看>>
鼠标增强软件StrokeIt使用方法
查看>>
本地连接linux虚拟机的方法
查看>>
某公司面试java试题之【二】,看看吧,说不定就是你将要做的题
查看>>
BABOK - 企业分析(Enterprise Analysis)概要
查看>>
Linux 配置vnc,开启linux远程桌面
查看>>
Hadoop安装测试简单记录
查看>>
CentOS6.4关闭触控板
查看>>
React Native 极光推送填坑(ios)
查看>>
Terratest:一个用于自动化基础设施测试的开源Go库
查看>>