Hvordan å generere en matrise med alle mulige kombinasjoner i Java

Hvordan å generere en matrise med alle mulige kombinasjoner i Java


En matrise er en datastruktur som består av rader og kolonner. Det er også kjent som en to-dimensjonal matrise. En matrise er en data beholder som inneholder en bestemt datatype, ordnet i en sekvens. Du kan opprette en matrise ved hjelp av et programmeringsspråk som Java å gjøre flere matriser som inneholder alle mulige kombinasjoner av den underliggende datatype. For eksempel, hvis den underliggende datatypen er en boolsk variabel, kan den inneholde to mulige verdier: 1 og 0. Opprette disse matriser krever bruk av "for" loops.

Bruksanvisning

1 Laste NetBeans IDE ved å klikke på programikonet. Når programmet laster, naviger til "Ny / New Project" og velg "Java Application" fra listen til høyre side av skjermen. En ny kildekode-filen vises i NetBeans tekst editor. Kildekoden filen inneholder en tom viktigste metoden og to klammeparenteser. All koden for dette prosjektet må gå i mellom disse klammeparenteser.

2 Erklærer en todimensjonal matrise av "boolsk" med en lengde på tre ved å skrive følgende uttalelse:

boolean[] arr = new boolean[3];

3 Lag en "for" loop som gjentas gjennom alle mulige kombinasjoner av en boolsk rekke lengde tre. Dette kan bli beregnet ved å øke lengden av matrisen (3) til strømmen av det totale antall muligheter hver celle i matrisen kan inneholde (2: sann eller usann). Dette resulterer i en verdi på åtte, så skrive den følgende "for" sløyfe for å iterere gjennom den samme logikk åtte ganger:

for(int x = 0; x < 8; x++)
{
}

4 Lag en "bryter" statement som hopper til en bestemt sak, avhengig av hva iterasjon "for" loop er for tiden på. Plasser følgende "bryteren" statement og alle sine saker inne i klammeparenteser av "for" loop:

switch(x)
{
}

5 Lag "case" uttalelser for "bryteren" statement. "Case" statement er påstanden om at "bryteren" statement hopper til basert på gjeldende iterasjon av "for" loop. For eksempel, i løpet av iterasjon der x = 3, hopper "bryteren" uttalelse til "case 3." Hver "case" statement tildeler unike permutasjoner til array, inntil alle permutasjoner er regnskapsført. Skriv følgende åtte tilfelle uttalelser inne i klammeparenteser av "bryteren" statement:

case 0:
arr = new boolean[]{false, false, false};
break;
case 1:
arr = new boolean[]{false, false, true};
break;
case 2:
arr = new boolean[]{false, true, false};
break;
case 3:
arr = new boolean[]{false, true, true};
break;
case 4:
arr = new boolean[]{true, false, false};
break;
case 5:
arr = new boolean[]{true, false, true};
break;
case 6:
arr = new boolean[]{true, true, false};
break;
case 7:
arr = new boolean[]{true, true, true};
break;

6 Å trykke verdien i matrisen ved å iterere gjennom den med en annen "for" sløyfe. Denne løkke trenger bare å være så lang som den matrise, som har en lengde på tre. Ved å plassere denne "for" loop rett etter "bryteren" statement, vil det ligge innenfor den første "for" loop og produsere en 8 med 3 matrise. Skriv følgende utsagn for å skrive ut matrisen med en ny linje mellom hver enkelt matrise:

for(int i = 0; i < 3; i++)
{ System.out.print(arr[i] + " "); }
System.out.println();

7 Trykk på den grønne "Play" -knappen for å kompilere og kjøre programmet. Programmet produserer alle permutasjoner av en åtte av 3 matrise av boolske verdier, som ser slik ut:

false false false
false false true
false true false
false true true
true false false
true false true
true true false
true true true