2015-11-09 11 views
11

क्या यह एक उचित धारणा है कि v8 कार्यान्वयन पुनर्प्राप्ति/लुकअप में ओ (1) है?es6 मानचित्र और सेट जटिलता, v8 कार्यान्वयन

(मुझे पता है कि मानक है कि गारंटी नहीं है)

+1

औसत पर? या सबसे बुरा मामला? – Oriol

+0

मानक [गारंटी उप-रैखिक जटिलता] (http://stackoverflow.com/a/31092145/1048572), बीटीडब्ल्यू। – Bergi

+0

@Oriol दोनों जानना दिलचस्प होगा। – Uri

उत्तर

12

यह एक निष्पक्ष धारणा है v8 कार्यान्वयन में पुनः प्राप्ति/देखने हे (1) है?

हां। वी 8 हैश टेबल के एक संस्करण का उपयोग करता है जो आमतौर पर इन परिचालनों के लिए O(1) जटिलता है।

विवरण के लिए, आप https://codereview.chromium.org/220293002/ पर एक नज़र डालना चाहेंगे जहां OrderedHashTablehttps://wiki.mozilla.org/User:Jorend/Deterministic_hash_tables पर आधारित है।

+2

उस पर थोड़ा विस्तार करने के लिए, वी 8 में मानचित्र और सेट को हाल ही में जावास्क्रिप्ट में पुन: कार्यान्वित किया गया था https://codereview.chromium.org/947683002 यह वी 8 में आम है, जावास्क्रिप्ट में नई सुविधाओं को लागू करने से जेआईटी (क्रैंकशाफ्ट/टर्बोफ़ान) रनटाइम को अनुकूलित करने दें कोड। –

+0

@DiegoPino: धन्यवाद। मैंने किसी भी तरह सोचा था कि 'ऑर्डर्ड हैशटेबल' कार्यान्वयन अभी भी चालू था क्योंकि मैंने इसे [ट्रंक] (https://code.google.com/p/v8/source/browse/trunk/src/objects.cc) में पाया ... – Bergi

संबंधित मुद्दे