-
Mobilarena
Új hozzászólás Aktív témák
-
Jim-Y
veterán
Sziasztok, egy egyszerű algoritmust kell implementálnom és érdekelne hogy van-e nagyságrendekkel jobb futásidejű megoldás mint amire gondoltam.
Feladat: vannak időben egymást követő események, A,B,C stb.. össze kell számolnom, hogy ezek közül melyek azok amik "futottak" majd átadták a futást, majd újból "futottak". Pl AABABCCD, ennek az eredménye az kell, hogy legyen, hogy A: igen, B: igen, C: nem, D: nem. Nem kell összeszámolni hogy sorozaton belül hányszor "mondtak" le a futásról majd megint futottak a lényeg, hogy egyszer lemondtak majd megint futottak. Remélem érthető.
Amit kitaláltam: Egyszer végigmenni a soron, illetve csinálni egy táblát ({ A: -, B: -, C: -, D - }) amibe gyűjtöm, hogy a bizonyos node-ok milyen állapotba kerültek a következő állapotokkal:
0: futott
1: lemondott a futásról
2: újra futottTehát szimulálva az algoritmust erre a sorra AABABCCD
1) A
{ A: 0, B: -, C: -, D - }2) A
{ A: 0->0, B: -, C: -, D - }3) B
{ A: 0->0->1, B: 0, C: -, D - }4) A
{ A: 0->0->1->2, B: 0->1, C: -, D - }5) B
{ A: 0->0->1->2, B: 0->1->2, C: -, D - }6) C
{ A: 0->0->1->2, B: 0->1->2, C: 0, D - }7) C
{ A: 0->0->1->2, B: 0->1->2, C: 0->0, D - }8) D
{ A: 0->0->1->2, B: 0->1->2, C: 0->0->1, D: 0 }És a végén megézem a táblában, hogy melyiknél van 2-es. Ez így O(n) futásidejű + a táblában a változtatások nem tudom, hogy ennél van-e jobb megoldás. Az implementálása ennek meg egyszerű.
Üdv és köszi
megj: ha valaki nagyon belejött, vagy ha az összkép segít egy hatékony(abb) algoritmus kitalálásában, akkor AABABCCD szerű sorból nem csak egy van, hanem N, és a feladatom, hogy minden A,B,C stb node-ra összesítve kiszámoljam hogy az N darab sorban hányszor "mondtak le a futásról". Nyílván így már a nagy algoritmus O(n*m)-es lesz de nem hiszem, hogy ezt meg lehetne úszni.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Path of Exile 2
- Autós topik
- Milyen házat vegyek?
- Kormányok / autós szimulátorok topikja
- Mibe tegyem a megtakarításaimat?
- Samsung Galaxy Watch5 Pro - kerek, de nem tekerek
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- One mobilszolgáltatások
- World of Tanks - MMO
- Milyen notebookot vegyek?
- További aktív témák...
- BOMBA ÁR Új Dell Inspiron 16" Gamer Tervező Vágó Laptop -50% Ultra 7 155H 16/1TB RTX 4060 8GB 2,5K
- ASUS ROG STRIX RTX 4070 Ti SUPER OC Edition 16G (kishibás) videokártya garanciával
- Iskolakezdési AKCIÓ! - I7-8700/16GB DDR4/Gigabyte B360/GTX1070/1TB HDD/240GB SSD - 144.999,-
- HP ZBOOK 17 G6 Tervező Vágó Laptop -60% 17,3" i7-9850H 16/512 QUADRO RTX 3000 6GB FHD
- Samsung S21 5G megkímélt jó állapotban.
- 20+ típus HP üzleti laptopok Elitebook, Probook, Zbook 8-13. gen gar.
- REFURBISHED - HP USB-C Dock G4 docking station (L13899-001)
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Acer TravelMate P214 i3-1115G4 12GB 256GB 14" FHD 1év garancia
- Bomba ár! HP Elitebook Folio 9470m - i5-3GEN I 8GB I 32SSD + 500GB I 14" I Cam I W10 I Garancia!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest