- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Samsung Galaxy S23 Ultra - non plus ultra
- Apple iPhone Air - almacsutka
- Android Autót minden mobilra!
- Apple iPhone 16 Pro - rutinvizsga
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Magisk
- OnePlus 7T Pro - árban is a csúcson
- iPhone topik
- Huawei Watch GT 6 és GT 6 Pro duplateszt
Új hozzászólás Aktív témák
-
LordX
veterán
válasz
EQMontoya #3035 üzenetére
Lehet jó falura, de ugyanannyit kell írni (na jó, a függvény/osztálynevek hosszabbak), ha rendesen használsz <random>-ot.
Map: Nem értek egyet: mivel a map node-okban tárolja az adatot, amiben benne van a kulcs, az érték, és jellemzően 3 pointer (left, right, parent), ezért masszívan több memóriát foglal, mint a vector: Az összes általam ismert 64 bites implementációban 32 byte + sizeof(pair<K,V>) a node méret + allocation overhead. Win x64-en a sizeof 16 bye, tehát 40 byte a blokk, ahol az overhead átlagosan 56 byte (!!), azaz 96 byte. Per node. Ja, és a map-nek kell egy extra node (az end node). Szóval 10 elemhez kell 1056 byte heap memória map-el.
Vector esetében ez N*sizeof(int) + overhead, ami most 10*4+56 = 96, összesen a 10 elemre. 100 elemre ez 9696 vs 449 byte.
Szóval ha a cellák több, mint ~9%-át használod ki, akkor a vector nyer map ellen. És még nem is beszéltünk mennyire cache-friendly a vector, és mennyire cache-ellenséges a map; hogy a vektorban indexelsz, nem keresel.
Azért ha tényleg el kell tárolnod a kulcsot, egy kategóriával szebben áll a map, de még mindig vesztésre áll, nem véletlen van a flat_map a boost-ban (ami gyakorlatilag egy map interfész vector felett).
Ú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!
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Kecskemét és környéke adok-veszek-beszélgetek
- GTA V
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Milyen légkondit a lakásba?
- Kínai és egyéb olcsó órák topikja
- exHWSW - Értünk mindenhez IS
- gban: Ingyen kellene, de tegnapra
- VGA kibeszélő offtopik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- Kellys Gate 50 MTB - M méret
- Xbox Series X+Nacon Rig 700HX+Play&Charge Kit
- Új Gamer PC Ryzen 7 5800X/RTX 5060 + 11 Féle VGA/16-32Gb DDR4/500-1Tb SSD/600-850W 2-4Év gari
- ROG Strix G713PV 17.3" QHD IPS Ryzen 9 7845HX RTX 4060 16GB 512GB NVMe gar
- Gamer PC-Számítógép! Csere-Beszámítás! R5 5500 / RTX 3060 12GB / 32GB DDR4 / 500GB SSD!
- Bomba ár! Lenovo ThinkPad T460s - i5-6GEN I 8GB I 128GB SSD I 14" FHD I Cam I W10 I Garancia!
- HP EliteOne 800 G5 All-in-One 16GB 512GB 23.8" Érintőkijelző!! 1 év garancia
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! MSI B450 R7 2700 16GB DDR4 512GB SSD RTX 2060 Super 8GB Rampage SHIVA Zalman 600W
- Bontatlan Lenovo T14S WUXGA Touch Ryzen5 Pro 7540U 16GB 256GB Radeon 740M Win11 Pro 3év Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest