【发布时间】:2011-09-21 17:53:25
【问题描述】:
我正在从事一个涉及“动态编程”的项目,并且对这个微不足道的事情感到震惊,请帮忙。
假设我将 4 作为输入,我想显示如下内容:0000 到 1111
但是,如果我输入 5,我想显示为:00000 到 11111 等等。
提前致谢,
编辑:请不要发帖问我要代码。这不是作业问题,我不需要任何代码,只需告诉我它的逻辑,我会很高兴。
EDIT2:Stackoverflow 正在发生 WTH,我有没有要求你们中的任何人为我编写代码?我希望投反对票的人投赞成票。如果我无法寻求帮助,这个论坛还有什么意义?
与我分享逻辑。我们可以讨论,我不需要这个代码。
EDIT3:我在这里发布我尝试过的代码。我希望这“满足”所有认为我没有尝试过任何东西的人。
import java.util.ArrayList;
公共类RegularInvestigator {
public ArrayList createCombinations(ArrayList listOfFlightNumbers) {
ArrayList<String> result = new ArrayList<String>();
for(int i = 1; i < listOfFlightNumbers.size(); i++) {
String binaryEqvivalent = Integer.toBinaryString(i);System.out.println(binaryEqvivalent);
String element = "";
for(int j = 0; j < binaryEqvivalent.length(); j++)
if(binaryEqvivalent.charAt(j) == '1')
element += listOfFlightNumbers + " ";
result.add(element.substring(0, element.length() - 1));
}
return result;
}
private String getContent(ArrayList<String> flight) {
String temp = "";
for(int i = 0; i < flight.size() - 1; i++) temp += flight.get(i) + " ";
temp += flight.get(flight.size() - 1);
return temp;
}
private ArrayList removeElementAtIndex(ArrayList flight, int position) {
ArrayList<String> res = new ArrayList<String>();
for(int i = 0; i < flight.size(); i++) {
if(i != position) res.add(flight.get(i));
}
return res;
} }
EDIT4:感谢 phoxis、PengOne、Jerry Coffin 和 oliholz 的宝贵回答:)
【问题讨论】:
-
你需要显示0000到1111的所有组合还是只显示0000和1111
-
分享代码并查看
-
@harigm,从 0000 到 1111 的所有组合用于输入为 4
-
我正在处理一个涉及此逻辑的问题,因此我无法与您分享整个代码。我正在研究一个动态编程问题,它涉及列出一个字符串的所有有效组合,所以如果我知道这个问题的逻辑,我可以在我的项目中应用这个逻辑并可以看到它的性能
-
@Shankar:“如果我不能寻求帮助,这个论坛还有什么意义?”这实际上不是一个论坛,它是一个问答网站。 :)
标签: java algorithm binary combinations