Kezdőoldal » Számítástechnika » Programozás » C láncolt lista párcsere,...

C láncolt lista párcsere, mégis hogy?

Figyelt kérdés

Az a problémám adódott, hogy van egy láncolt listám, amibe szeretném az alábbi módon felcserélni a listaelemeket az adatok másolása nélkül( újraláncolással), ( egyszeresen láncolt).

1->3->5 akkor 3->1->5

de ha páros számú adat van benne akkor 1->3->5->7 , 3->1->7->5

Igazából nem lenne vele probléma, de a return void és csak a struct Node* headet kapom meg paraméterlistán.

Igazából egy régebbi zh példa ( ELTE-n tanulók programozó informatikusnak)

Kódot nem tudok küldeni mivel teljesen nem tudom elkezdeni, ha így kapom meg, ha esetleg struct Node **head-et kapnám meg semmi baj nem lenne.

Köszi előre is a válaszokat!



#C, ELTE, PROGRAMOZÁS #linked list #Reverse pairs
2020. nov. 13. 20:59
1 2 3
 21/26 anonim ***** válasza:
#19 ja kb. csak még hozzá kell adni néhány sort ami biztosítja, hogy a legelső elem a cserék után is head alatt legyen
2020. nov. 14. 12:11
Hasznos számodra ez a válasz?
 22/26 anonim ***** válasza:
42%

Nem lehet fordítás után a legelső elem head alatt, csak másolással, azt meg a feladat szerint nem lehet.

Tehát a feladat leírásának megfelelő megoldás az, ha megfordítod a listát és leszarod, hogy hova mutat a head fordítás után. Ebben a formában ez nyilván hülyeség, de gondolom a megfordítás implementációja lenne a lényege.

2020. nov. 14. 12:20
Hasznos számodra ez a válasz?
 23/26 A kérdező kommentje:

Igen valószínűleg az a lényege, 1,5 napja debuggolgatok meg készítem a rajzokat, de nem tudom felírni a helyes megfejtést, addig jutottam, hogy megcseréli ámbár ugye, ahogy írtátok, hogy a legelső elem nem lesz a head alatt. Kaptam hintet az oktatótól, ami annyi volt, hogy ne próbálkozzak mert ő is , amiatt debuggolt, hanem csináljak újraláncolást.

Azon gondolkodtam , hogy bejárom a teljes kapott listát, ráteszek egy számlálót és, ha páros akkor headre ráfűzőm, ha páratlan akkor meg a párosra de ugye amint ráfűzőm az az elem, akkor a többi a rajta volt a láncon mennek a levesbe, ezért nem értme, hogy hogy tudnám

2020. nov. 14. 15:18
 24/26 A kérdező kommentje:
Másolással* ez kimaradt :D
2020. nov. 14. 15:19
 25/26 A kérdező kommentje:
Bocsi a fogalmazásért, közbe jár az agyam és hát igen :D
2020. nov. 14. 15:20
 26/26 anonim ***** válasza:

"Kaptam hintet az oktatótól, ami annyi volt, hogy ne próbálkozzak mert ő is , amiatt debuggolt" - we hit bedrock


Most már kaptál több kódot és magyarázatot is, innen már csak el tudsz indulni. Az enyém konkrétan pont azt csinálja amit kértél és működik is, bár szépsége megkérdőjelezhető.

2020. nov. 14. 18:07
Hasznos számodra ez a válasz?
1 2 3

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!