Kezdőoldal » Számítástechnika » Programozás » Java-ban hogyan rendezzek...

Lewike kérdése:

Java-ban hogyan rendezzek kettő Arraylistot?

Figyelt kérdés

Van egy "list1", amiben stringek vannak, és egy list2 amiben számok. A list2-ben lévő számok jelzik, hogy a list1-ben lévő stringből hány db-van.


List1 List2

"alma" 5

"korte" 3

"dio" 7


A list2 kellene rendezni csökkenő sorrendbe, és ezzel párhuzamosan a list1-be lévő stringeket is sorba rendezni.Eredmény így kellene kinézzen:

List1 List2

"dio" 7

"alma" 5

"korte" 3


For ciklussal kellene megoldani.



2016. márc. 8. 13:51
1 2
 1/11 anonim ***** válasza:
0%

"For ciklussal kellene megoldani."


Akkor rajta.

2016. márc. 8. 13:53
Hasznos számodra ez a válasz?
 2/11 A kérdező kommentje:

Aki nem ért hozza, nem igazán értem miért válaszol :D


Simán egy lista rendezése for ciklussal nem ördöngös.

Dupla for ciklusban gondolkodom, csak azt nem tudom hogy oldjam meg, hogy amikor a list2-ben megkapom az első MAX értéket, és azt a lista elejére teszem, akkor a list1-ben is cserélődjön.


Amennyiben lehetséges nem szeretnék MAP-ot használni.

2016. márc. 8. 14:07
 3/11 anonim ***** válasza:
100%

Hát figyelj, ha egy listára tudsz írni rendezést, akkor egy másik listát is tudsz vele rendezni párhuzamosan.


Hiszen az egyik listát hogy rendezed, mi a fő lépés belül? Megcserélni lista1[i]-t lista1[j]-vel. Nem ördöngösség melléírni, hogy ugyanmár cserélje meg ugyanígy lista2-ben is lista2[i]-t lista2[j]-vel. :)

2016. márc. 8. 14:18
Hasznos számodra ez a válasz?
 4/11 anonim ***** válasza:
100%

Alapból teljesen rossz az elképzelés, nem 1978 van.

A Java objektumorientált nyelv, tessék az összetartozó adatokat egy objektumba tenni és egyben kezelni.

Tádá, probléma meg is oldódott...

2016. márc. 8. 14:35
Hasznos számodra ez a válasz?
 5/11 Tengor ***** válasza:
100%
#4, a rendezéshez pedig nem kell for, de lehet, hogy kifejezetten ezt a feladat, hogy a két listát párhuzamosan rendezze for-ral.
2016. márc. 8. 14:40
Hasznos számodra ez a válasz?
 6/11 A kérdező kommentje:

#4 Teljesen jogos a felvetésed, ésszerű gondolkodás mellet úgy kellene megoldani.


#5 Ráhibáztál. Ez lenne a "feladat".

2016. márc. 8. 14:49
 7/11 anonim ***** válasza:
52%
Na, megvan már a megoldás?
2016. márc. 8. 15:04
Hasznos számodra ez a válasz?
 8/11 anonim ***** válasza:

Tudsz listát rendezni ciklussak de nem tudod megírni hogy a másik listát párhuzamosan kezelje. Hát ez fenomenális :D


Na de ha pl buborékrendezést használsz, és van egy swap(elem1, elem2, lista) fv-ed, ami megcserél 2 elemet a listádban akkor csak:


swap(szam1, szam2, list2);

swap(sztring1, sztring2, list1);


Lényegében a számok alapján csinálod a rendezést, csak mindkét listán.

2016. márc. 8. 16:27
Hasznos számodra ez a válasz?
 9/11 anonim ***** válasza:

"csak azt nem tudom hogy oldjam meg, hogy amikor a list2-ben megkapom az első MAX értéket, és azt a lista elejére teszem, akkor a list1-ben is cserélődjön."


mondjuk úgy, hogy ugyanazt csinálod a list2-vel, mint a list1-gyel, érthetetlen, hogy ezen mi nem megy..

2016. márc. 8. 17:31
Hasznos számodra ez a válasz?
 10/11 A kérdező kommentje:

Lenne egy másik kérdésem is. Ez már kicsivel konkrétabb.

Hogyan tudok betenni egy ArrayList bizonyos pozíciójába egy értéket?

Kivenni a list.get(i)-vel csináltam.

Hogyan tudnék most a lista (i)-ik pozíciójába írni?

2016. márc. 8. 18:08
1 2

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!