-
Fototrend

Új hozzászólás Aktív témák
-
Jester01
veterán
Először rendezd abc sorrendbe a beadott szót. Ez gondolom menni fog.
Utána csinálj egy tömböt amiben jelzed, ha egy betűt már felhasználtál.
Alapesetben ez legyen csupa igaz érték (true/1).
Egy másik tömbben pedig a permutált indexeket gyűjtöd, ez alapesetben egyesével nő.
Rögvest írd is ki, mert ez lesz a legelső permutáció.
A következőt pedig úgy kapod meg, hogy az utolsó karaktertől elindulsz és mindig megkeresed a következő fel nem használt betűt. Ha már nincs ilyen, akkor lépsz eggyel visszább (ha nem tudsz, akkor kész vagy). Amint találtál egyet, ismét elindulsz előre és szépen veszed az első fel nem használt betűt.
Igy valahogy:for(i = len - 1; i >= 0; i--)
{
int current = indices[ i ];
used[current] = 0;
current = findnextunused(used, current + 1, len);
if (current < len)
{
indices[ i ] = current;
break;
}
}
if (i < 0)
{
break;
}
indices[++i] = findnextunused(used, 0, len);
for(i++; i < len; i++)
{
indices[ i ] = findnextunused(used, indices[i - 1] + 1, len);
}
A findnextunused függvényem második paramétere a keresés kezdőpozíciója.
A megtalált betűt be is jelöli, hogy használatban van.
Biztos van egyszerűbb módja, mindig is utáltam a kombinatorikát
Emitter: a rekurziót is utálom
De azért persze szoktam használni.
MOD: [ i ]
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- CES 2026: Érintőceruzát támogató komolyabb Motorola várható
- Canon EOS DSLR topic
- Aranyozott különkiadást kapott a Red Magic 11 Pro+
- Kormányok / autós szimulátorok topikja
- Cyberpunk 2077
- Félmillió felett a kiszállított Xiaomi autók száma
- Vezeték nélküli fülhallgatók
- Padavan firmware
- Milyen NAS-t vegyek?
- Jöjjön ami KIMARADT... 😅 — 2025 REEL
- További aktív témák...
- Hutt C6 ablaktisztító robot / 12 hó jótállás
- HIBÁTLAN iPhone 13 Pro Max 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3685
- MacBook Pro 14 2024 M4 Pro, 24 GB RAM, 1 TB SSD Space Black 27% Áfás
- Telefon felvásárlás!! Honor 90 Lite/Honor 90/Honor Magic5 Lite/Honor Magic6 Lite/Honor Magic5 Pro
- 146 - 147 - 166 - 167 - 168 - 169 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest


De azért persze szoktam használni.

