Это код, над которым я работаю.
import java.io.*;
import java.util.*;
public class Program {
public static void main(String[] args) {
char[] a = new char[] {'0','1'};
possibleStrings(3, a,"");
char[] b = new char[] {'|','&'};
possibleStrings(2, b,"");
result(a,b); }
public static void possibleStrings(int maxLength, char[] alphabet, String curr) {
if(curr.length() == maxLength) {
System.out.print(curr);
System.out.println();
} else {
for(int i = 0; i < alphabet.length; i++) {
String oldCurr = curr;
curr += alphabet[i];
possibleStrings(maxLength,alphabet,curr);
curr = oldCurr;
}}}
public static void result(char[] arrayA,char[] arrayB) {
StringBuilder sb = new StringBuilder();
int i = 0;
while( i < arrayA.length && i < arrayB.length){
sb.append(arrayA[i]).append(arrayB[i]);
++i;
}
for(int j = i; j < arrayA.length; ++j){
sb.append(arrayA[j]);
}
for(int j = i; j < arrayB.length; ++j){
sb.append(arrayB[j]);
}
System.out.println("o/p="+sb.toString());
}}
Из основной функции я передаю значения в возможные строки и пытаюсь собрать сгенерированные здесь строки обратно в основную функцию для обоих наборов входных данных, т.е. possibleStrings(3, a,"");
и possibleStrings(2, b,"");
и затем передайте строки a и b в функцию result
.
В функции результата я пытаюсь добавить символьные строки символ за символом и получить комбинацию выходных данных, полученных в приведенных выше строках.
Но вывод, который я получаю, неверен.Я не знаю, где я иду не так.Пожалуйста, помогите мне.