import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class recursionTest {
static int size;
static int count;
static char[] arrChar=new char[100];
public static void main(String[] args) throws IOException {
System.out.println("Enter a word:");
String input=getString();
size=input.length();
count=0;
for(int j=0;j<size;j++)
arrChar[j]=input.charAt(j);
doAnagram(size);
}
public static void doAnagram(int newSize) {
if(newSize==1){
return ;
}
for(int j=0;j<newSize;j++){
doAnagram(newSize-1);
if(newSize==2)
displayWord();
rotate(newSize);
}
}
public static void rotate(int newSize) {
int j;
int position=size-newSize;
char temp=arrChar[position];
for( j=position+1;j<size;j++)
arrChar[j-1]=arrChar[j];
arrChar[j-1]=temp;
}
public static void displayWord(){
if(count<999)
System.out.print(" ");
if(count<99)
System.out.print(" ");
if(count<9)
System.out.print(" ");
System.out.print(++count+" ");
for( int j=0;j<size;j++)
System.out.print(arrChar[j]);
System.out.print(" ");
System.out.flush();
if(count%6==0)
System.out.println("");
}
public static String getString() throws IOException{
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String s = br.readLine();
return s;
}
}
分享到:
相关推荐
易语言递归法取排列组合例程源码,递归法取排列组合例程,子程序_取组合
递归法取排列组合易语言源码例程.rar 递归法取排列组合易语言源码例程.rar 递归法取排列组合易语言源码例程.rar 递归法取排列组合易语言源码例程.rar 递归法取排列组合易语言源码例程.rar 递归法取排列组合...
数字排列组合是个经典的算法问题,它很通俗易懂,适合不懂业务的人学习,我们通过它来发现和运用并行计算的优势,可以得到一个很直观的体会,并留下深刻的印象。问题如下: 请写一个程序,输入M,然后打印出M个...
排列组合的较详细的讲述,看完之后应该会对基本的排列组合计算了如指掌
摘要:C#源码,随书源码,递归算法,排列组合 C#递归算法:0~N位数的排列组合,组合的数字在0~5之间,输入需要组合的位数,点击“计算”按钮,程序会列出所有符合条件的数列组合。一个学习C#递归算法的好范例。
易语言源码递归法取排列组合易语言源码例程.rar 易语言源码递归法取排列组合易语言源码例程.rar 易语言源码递归法取排列组合易语言源码例程.rar 易语言源码递归法取排列组合易语言源码例程.rar 易语言源码递归法...
java m取n 重复 不重复 排列组合 for循环嵌套递归
递归求解几类排列组合问题,求组合数列的情况
对案例进行排列组合的小程序
排列组合是常见的数学问题,本文就以完整实例形式讲述了C#实现排列组合算法的方法。分享给大家供大家参考之用。具体方法如下: 首先,数学中排列组合,可表示为:排列P(N,R) 其实排列实现了,组合也就实现了,组合...
本资源附带文档解释了排列组合算法的实现和原理。其中排列算法是基于递归实现的,组合算法是基于高效的位移法实现的。代码是使用Java版实现的。
排列组合一个练习以及递归输出排列的PPT
只需改变里面一处数据,就可以根据自己需要,执行输出n个数中取m个数的所有组合。
此段程序用了递归算法计算组合数在相应表中的序数。
这段程序是为了验证google的一个面试题些的。... 大概意思如下: 有一组点,知道其坐标值。 有一只笔可以用来画出点。笔画出点的时间很快,可以忽略不计,但是笔移动比较耗时。 1....(若画笔的初始位置在左下角) 2....
小小wintc程序 计算排列组合代吗 用递归写的 呵呵
C++函数-递归调用(排列组合问题)
用递归实现排列组合,并能够结合解决P(m,n)问题
Java排列组合_组合算法,利用list及set的无序性, 通过递归实现,不同于以往的排列组合 自娱自乐
Please use recursion(递归)to get fibonacci numbers(一种整数数列). The user will specify(指定,详细说明) how many of the numbers he or she wants to print. You can use the main function to print ...