Hirdetés
- Samsung Galaxy A56 - megbízható középszerűség
- Apple iPhone 13 mini - miért nem veszik elegen?
- Kiszervezett ultrazoommal érkezett meg a Vivo kameratelefonja
- Samsung Galaxy S25 - végre van kicsi!
- VoLTE/VoWiFi
- Telekom mobilszolgáltatások
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Xiaomi 12T - egytucat
- iPhone topik
- One mobilszolgáltatások
Új hozzászólás Aktív témák
-
dabadab
titán
válasz
Ron Swanson #4165 üzenetére
"Kis mennyiségű adatnál szépen le is fut, de ha mondjuk N = több ezer, akkor nem fut le 0,2s alatt...
"
Ó, hát erre egyszerű a megoldás, a lista tetejéről válassz valamit: [link]
Komolyabbra fordítva a szót, az a gondod, hogy kb. a vendégek számának négyzetével nő az elvégzendő számítások mennyisége. A megoldás az, ha találsz ennél kisebb ordójú algoritmust. Első blikkre ilyen lehet az, ha a vendégeket nem direktben hasonlítod össze egymással, hanem az időintervallummal machinálsz.
Például csinálsz egy listát, amiben olyan elemek vannak, amik állnak egy időpontból, a már ott lévő vendégek számából és az abban az időpillanatban érkezett vendégek számából és simán ezen a listán mész végig minden egyes vendégre.
Ez egyébként továbbra is algoritmikus kérdés, nem C++ - specifikus.
Hogy ontopic legyek, a C++ kódod valami egészen rettenetes és elavult, szóval fogadni mernék, hogy ezt a magyar (felső)oktatás keretében tanultad
, szerintem azt is érdemes jobb átnézni:
1. TVendegek:
Minek az a T? Most komolyan? Mitől lesz bárkinek is jobb attól, hogy az összes osztály neve T-vel kezdődik, mint "type" (sőt, "típus"). Szóval legyen inkább Vendegek.
Miért Vendegek? Egyetlen vendég adatait tárolja, nem többét, szóval legyen inkább Vendeg.
És persze kódot szigorúan angolul írunk, szóval a végleges változat az a Guest.2. erkezes / tavozas
Ha már név: itt pont van értelme annak, hogy jelöljük, hogy ezek adattagok, szóval m_arrive, m_leave
Adattagokat csak kivételes esetben érdemes kirakni publikba, ez meg semmiképpen sem az, szóval legyenek csak private-ok (és a private tagokat érdemes a publicok mögé rakni, mert így jobban olvasható a kód: az elején ott van a mindenkit érdeklő rész, a class API-ja, az implementáció meg elfér hátul).3. TVendegek(const int E, const int T):
A constok itt elég feleslegesek (érték szerit átadott primitívekről van szó), a nevek meg lehetnek nyugodtan beszédesek, a C++-ban a scope-ok miatt az is tök jól működik, hogyC::C(int x) : x(x) {}
De mivel a tagok neve pont az előbb kapott egy m_ előtagot, amúgy se lenne névütközés legyen inkábbGuest(int arrive, int leave)
....
és most mennem kell, majd folytatom, addig a többiek úgyis belekötnek abba, amit írtam
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Láncfűrész topik
- GeForce RTX 5060 Ti: Ha az ár jó, minden jó (lenne)
- Android játékok topikja
- Gitáros topic
- Samsung Galaxy A56 - megbízható középszerűség
- Autós topik látogatók beszélgetős, offolós topikja
- Kerékpárosok, bringások ide!
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Apple asztali gépek
- Projektor topic
- További aktív témák...
- Csere-Beszámítás! Xbox One X 1TB Játékkonzol Olvass! Model 1787
- 3080/ 5700x / B550I 1.3 / 32GB 3600Mhz / SF1000L / 1TB FireCude 530
- Új monitor állvány - csak össze lett szerelve
- Új, bontatlan Tesla Smart Floodlight Battery Camera + Tesla 5W napelemmel - 1,5 év garival! -
- Szép állapotú Apple Iphone 8 Plus 64GB független fekete - akku 74%-os - 1 hét próbagaranciával! -
- Honor X6b 128GB, Kártyafüggetlen, 1 Év Garanciával
- magyar bill. - Lenovo ThinkPad Z13 G1 - AMD Ryzen R7 Pro 6850U, 13.3" 2.8K OGS érintőkijelző
- Samsung Galaxy A13 4G 64GB, Kártyafüggetlen, 1 Év Garanciával
- Álomsebesség elérhető áron - Fedezd fel a jövőt!
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest