Source code kombinasi.java versi awal, dalam arti code ini masih akan mengalami perubahan dari waktu ke waktu.
kombinasi.javapackage com.komputasiawan.combinatoric;
public class Kombinasi {
int counter = 0;
public void cetakSemua(String[] kata)
{
System.out.print(++counter + ",");
for (int i = 0; i < kata.length; i++) {
System.out.print(kata[i] + (i!=kata.length-1? "," : ""));
}
System.out.println();
}
public void prosesKombinasi(String[] kata, int panjangKombinasi)
{
for(int startIdx=0; startIdx<=kata.length-panjangKombinasi; startIdx++)
{
for(int i=startIdx+1; i<= (kata.length-panjangKombinasi+1);i++)
{
String[] kata2 = new String[panjangKombinasi];
System.arraycopy(kata, i, kata2, 1, panjangKombinasi-1);
kata2[0] = kata[startIdx];
cetakSemua(kata2);
}
}
}
public static void main(String[] args) {
String[] kata = {"A", "B", "C", "D", "E","F"};
new Kombinasi().prosesKombinasi(kata, 5);
}
} |
|