Egyel balra lépő cirkuláris permutáció?
Van egy feladatom informatikából, az lenne a lényege,hogy felkel építenem egy négyzetes mátrixot(n=n), melynek első sora: 1,2,3,4 aztán a következőben jelenik meg a cirkuláris permutáció.(1,2,3,4/2,3,4,1/3,4,1,2/4,3,2,1)
Nem igazán tudom ,hogy is kellene leprogramoznom,hogy mindig az egyel balra lévő számjegyet írja az első helyére(C++ban dolgozom)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Nem írtad el az utolsót és 4,3,2,1 helyett 4,1,2,3?
Mert ha igen, akkor tölts fel egy láncolt listát 1,2,3,4-el, aztán listát könnyű shiftelni, egyszerűen a végére beszúrod az első elemet, majd törlöd azt.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
A 4,1,2,3 az valóban nem illik a képbe, illetve ha igen akkor nem "egyel balra lépő cirkuláris permutáció"-ról beszélünk.
Felesleges ehhez láncolt lista. Ágyúval verébre való lövés lenne, hiszen pofon egyszerű feladat.
Egy ilyen tömböt kell kapni a végén:
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
A tömbnek bármely eleme a (sor+oszlop) modulo 4 + 1 képlet szerint kiszámítható.
Ha t a 2D-s tömb akkor bármely elemére igaz lesz, hogy
t[sor][oszlop] = (sor+oszlop) % 4 + 1 c++ - osan írva.
Csak léptetni kell 2 egymásba ágyazott for ciklussal a sor meg oszlop változókat.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
javítás : "A 4,1,2,3 az valóban nem illik a képbe"
helyett 4,3,2,1 nem illik a képbe.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!