Trenutno radim na jednom vrlo zanimljivom projektu (web-aplikacija u ASP.NET-u) u kojem se pokazala potreba za računanjem kombinacija. Konkretno, radi se o tome kako smjestiti n ljudi po sobama, ako znamo da su dostupne, recimo, dvokrevetne i trokrevetne sobe.
Izračunati koliko kombinacija postoji, sjećam se iz srednje, nije neki problem, no ispisati sve kombinacije…
Kod rješenja tog problema uvelike mi je pomogao članak na CodeProjectu, inače vrlo korisnom siteu, koji nudi gotovu klasu za kombinacije.
Evo kako to izgleda (primjer preuzet iz samog članka):
using CH.Combinations;
int[] input = new int[] { 1, 2, 3, 4, 5 };
Combinations<int> combinations = new Combinations<int>(input, 3);
foreach (int[] combination in combinations)
{
// Do something with "combination".
}
Za ostale primjere i trikove, posjetite sam članak, a kako za download izvornog kôda treba registracija, možete ga mimo nje preuzeti ovdje.
Login