Integer-joukon

kombinaatiot

Vähäiset ohjelmointitaitoni ovat unohtumassa. Onkohan Javan nykyisissä versioissa - esim. Math-kirjastossa - olemassa valmis metodi, joka laskee jonkun integer-joukon kombinaatiot?

Tai löytyisiköhän tällainen koodinpätkä netistä tai voisiko joku näppärä kirjoittaa pätkän, joka tulostaa jonkun integer-joukon kaikki eri kombinaatiot, esim. kaikki mahdolliset 3 integerin osajoukot, jotka voidaan muodostaa 7 integerin joukosta.

Siis syötteenä joukko integerejä, tulostetaan joko näytölle tai tiedostoon.
Koodilla ei sinänsä ole väliä, mutta tarvitsisin työkalun, jolla voisi näppärästi laskea lukujoukkojen kombinaatioita. Löytyykö tällaista työkalua muuten valmiina esimerkiksi netistä? (Silloin en tarvitsisi koodia.)

2

412

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Ehkä?

      class Kombi {

      static boolean[] valittu;
      static int lkm;

      public static void main (String[] args) {
      lkm = 8;
      valittu = new boolean[lkm];
      valitse (lkm);
      }

      static void valitse (int taso) {
      if (taso == 0) {
      System.out.print ("Seuraava kombinaatio: ");
      for (int i = 0; i < lkm; i) {
      if (valittu [i]) System.out.print (i 1);
      }
      System.out.println ("");
      return ;
      }
      valittu[taso-1] = false;
      valitse (taso-1);
      valittu[taso-1] = true;
      valitse (taso-1);
      }
      }

      Jos haluat tietyn kokoisia osajoukkoja, voit lisätä rekursiiviseen funktion laskurin, joka kertoo montako true-arvoa on jo laitettu. Sitä testaamalla voit heittää epäkelvot yhdistelmät pois.

      Tämä on minimaalinen toimiva ohjelma. Voit lukea lkm-muuttujan arvon komentoriviltä ja muutenkin parannella toimintaa. Tulostustakin voinee korjailla järkevämmäksi, koska se ei toimi lukujen kasvaessa >= 10.

    • *--*--*

      Jos tarkoitit esim. seuraavaa:

      A: set(1,2,3,4);
      powerset (A, 3);
      tulostaa:
      {{1,2,3},{1,2,4},{1,3,4},{2,3,4}}

      Ohjelma on Maxima nimeltään ja löytyy tuolta:

      http://maxima.sourceforge.net/

      (linux-distroissa löytynee pakettihallinnasta, muutoin download-linkki vasemmalla. OS X:kin taitaa löytyä)

      On muuten sairaan hyvä kaikille matikkaa tarvitseville. (Ei toisin ole mitään tekemistä Javan kanssa - onneksi)

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Marinin hallituskaudella Suomen BKT sentään kasvoi

      Tämä ns. kauhukabinetti ei ole saanut aikaan kuin vahinkoa. Otti ennätysvelat rikkaiden veroalennuksiin ja sai työttömyy
      Maailman menoa
      8
      2062
    2. Huulitäytteet ja tekotisssit

      Kylillä kulkiissa olen huomannut että tässäkin tuppukylässä on hameväki alkanut muokkaamaan ulkonäköään huulitäytteillä
      Suomussalmi
      110
      1441
    3. Drone-epäily Uudellamaalla

      Ihmisiä kehotetaan siirtymään sisätiloihin. https://www.is.fi/kotimaa/art-2000012008358.html
      Maailman menoa
      120
      1185
    4. Sait mut mies heikoksi

      Yllätti tämä asia nyt kyllä. Olet ollut mielessä koko ajan. Ei riitä pelkkä kevät nyt syyksi. Veit jalat alta. Pannaan m
      Ikävä
      86
      1074
    5. Vauvat syntyvöät vihan lapsina?

      Kyllä on pimeä oppi, ja olen ollut täydessä pimeydessä opillisesti, että pienet lapset syntyisivät paholaisen lapsina. O
      Luterilaisuus
      66
      1025
    6. Nuorille miehille ei kelpaa enää paljon käytetty nainen

      "En ikinä huolisi mitään kyläpyörää", Tomi täräyttää TikTokissa https://www.iltalehti.fi/kotimaa/a/27182b8f-7759-49d0-8
      Sinkut
      192
      1010
    7. Unelma tilanne

      Miten haluaisit, että tilanteenne etenisi tai miten toivoisit hänen lähestyvän sinua? Vai toimitko mielummin itse, jos j
      Ikävä
      67
      795
    8. Itsensä pidättely

      Pidätteletkö tunteitasi tai itseäsi hänen aikanaan ja jos niin miksi?
      Ikävä
      76
      760
    9. Stefan Therman. Vakava syyte ja vankila uhkaa.

      Nyt ei taida mies selvitä enää selityksillä.
      Kotimaiset julkkisjuorut
      73
      642
    10. Oho! Martina Aitolehti teki radikaalin hiusmuutoksen - Uskaltaisitko itse?

      Martina Aitolehti on menestyvä yrittäjä. Nyt hän on mukana Erikoisjoukot-realityssä. Erikoisjoukoissa Aitolehti nähdään
      Kotimaiset julkkisjuorut
      42
      624
    Aihe