首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

一个算法,该怎么解决

2013-02-28 
一个算法这个算法主要求状态结果种类,状态只有两种,0和1,具体如下:当输入为1时:01状态结果为2种。当输入为2

一个算法
这个算法主要求状态结果种类,状态只有两种,0和1,具体如下:

当输入为1时:
0
1
状态结果为2种。

当输入为2时:
00
10
01
11
状态结果为4种。

当输入为3时:
000
100
010
001
110
011
101
111
状态结果为8种。


这里有个规律,都是2的N次方,这个在JAVA中要怎么写?




[解决办法]
这个简单

public class StateTest {
public static void printState(int n) {
for (int i = 0; i < Math.pow(2, n); i++) {
String b=Integer.toBinaryString(i);
//补足位数
int length=b.length();
if(length<n){
for(int j=0;j<n-length;j++){
b="0"+b;
}
}
System.out.println(b);
}
}
public static void main(String args[]){
StateTest.printState(3);
}
}

热点排行