क्या किसी भी भाषा में पूरी तरह कार्यात्मक soft heap डेटा संरचना का कोई कार्यान्वयन है?शुद्ध रूप से कार्यात्मक मुलायम ढेर
उत्तर
एसीएम डिजिटल लाइब्रेरी की एक त्वरित खोज इंगित करती है कि बहुत रोचक होने के बावजूद चाज़ेल की मुलायम ढेर संरचना को अपेक्षाकृत कम अध्ययन प्राप्त हुआ है, और यह लगातार/कार्यात्मक नरम ढेर इस प्रकार एक खुला शोध विषय है।
तो मैं नहीं कहूंगा, लगातार नरम ढेर के लिए कोई ज्ञात दृष्टिकोण नहीं है। एक को वर्णित करना एक प्रकाशित परिणाम होगा (यह प्रतिलिपि जोड़ने के लिए उबाल सकता है जहां आप मूल संरचना को बदल देंगे, और साझाकरण अवसरों की पहचान करेंगे)।
@ जोन, यदि आप इस समस्या से निपटने की योजना बना रहे हैं, और आपने अभी तक * कार्यात्मक डेटा संरचनाओं को नहीं पढ़ा है * मुझे सलाह है कि आप ऐसा करते हैं। हालांकि यह नरम ढेर को कवर नहीं करता है, यह आपको कार्यात्मक डेटा संरचना डिजाइन के बुनियादी सिद्धांतों को सिखाएगा जो इस समस्या से निपटने में सहायक होंगे। –
मेरी ओनी सीएफ लाइब्रेरी में ओकासाकी के स्काई-बिनोमियल ढेर का एक पूर्ण रूप से पूर्ण-विशेषीकृत ओकैमल कार्यान्वयन है: http://bitbucket.org/jhw/oni –
इस प्रोजेक्ट में जावा कोड है जो स्कैला में अनुवाद करने के लिए बहुत भयानक नहीं हो सकता है ... और फिर इसे और अधिक कार्यात्मक बनाते हैं।
https://github.com/lowasser/SoftSelect
लेकिन जैसा कि पहले उल्लेख किया पूरी तरह कार्यात्मक डेटा सरंचनाएं पुस्तक हास्केल कोड शीतल ढेर को अपनाने के लिए, विशेष रूप से उदाहरण के जावा कोड दिए गए आसान हो सकता है कि नहीं है।
मैं इस पेपर को एसीएम से भी देख रहा हूं जहां सॉफ़्टहेप्स बाइनरी के साथ बने होते हैं पेड़: http://dl.acm.org/citation.cfm?id=1496823 – RudeDude
हैम कापलान, रॉबर्ट ई Tarjan, उरी ज़्विक कागज का वर्णन करता है लेकिन पूरी तरह से पूरी तरह कार्यात्मक संस्करण का विश्लेषण नहीं करता है। यह कम से पाया जा सकता है:
- 1. ढेर से निपटने शुद्ध पार्सर
- 2. शुद्ध कार्यात्मक प्रोग्रामिंग
- 3. पाठ संपादकों के लिए शुद्ध रूप से कार्यात्मक डेटा संरचना
- 4. एक शुद्ध रूप से कार्यात्मक प्रोग्रामिंग भाषा में संदेह से जुड़ी सूची
- 5. "सही" शुद्ध कार्यात्मक दोगुना से जुड़े सूची और
- 6. कॉपी-ऑन-राइट के साथ शुद्ध रूप से कार्यात्मक डेटा संरचनाएं?
- 7. प्रोग्रामिंग रूप से अधिकतम जावा ढेर आकार
- 8. स्क्रीन मुलायम बटन एंड्रॉइड
- 9. ढेर ढेर और ढेर
- 10. कार्यात्मक से ओओ
- 11. विंडोज असेंबली ढेर और ढेर?
- 12. ओओपी से एनईटी में शुद्ध कार्यात्मक उन्मुख प्रोग्रामिंग सोच के लिए सोचना कितना मुश्किल है?
- 13. ये दो linq अभिव्यक्ति कार्यात्मक रूप से समकक्ष हैं?
- 14. "(फ़ंक्शन() {})()" और "(फ़ंक्शन() {}())" जावास्क्रिप्ट में कार्यात्मक रूप से बराबर हैं?
- 15. स्थानीय रूप से एक पूरी तरह कार्यात्मक पेड़ संपादन
- 16. क्या ऑब्जेक्ट के सदस्य चर हैं जो ढेर पर स्वचालित रूप से ढेर पर हैं?
- 17. सीपीथन - आंतरिक रूप से, ढेर और ढेर पर क्या संग्रहीत किया जाता है?
- 18. जावास्क्रिप्ट एक कार्यात्मक भाषा के रूप में
- 19. लंबवत रूप से एक प्रश्न में MySQL परिणामों को ढेर
- 20. जावा ढेर आकार को प्रोग्रामेटिक रूप से कैसे बढ़ाएं
- 21. जावा ढेर आकार को स्थायी रूप से बढ़ाएं?
- 22. हार्डवेयर धागे बनाम मुलायम धागे?
- 23. मुलायम बटन बार का आयाम
- 24. ढेर
- 25. शुद्ध सी
- 26. ढेर और ढेर आवंटन
- 27. ढेर
- 28. पायथन: ढेर से तत्व हटाएं
- 29. क्या मैं कार्यात्मक रूप से एक संख्या और स्ट्रिंग को जोड़ सकता हूं?
- 30. शुद्ध कार्यात्मक प्रोग्रामिंग में आईओ का उपयोग करने के लिए मोनैड का विकल्प क्या है?
मैं कल रात यह का एक सा के माध्यम से मिला, मैंने समय जटिलताओं की पुष्टि नहीं की है, लेकिन वे गलत लॉग (1/ई) लगते हैं जहां ई 0 <ई <1 है। इससे नकारात्मक जटिलता मिल जाएगी। और, वे कुछ परिचालनों के लिए 0 की एक अमूर्त लागत का भी उल्लेख करते हैं। क्या मैं अपनी व्याख्याओं पर उलझन में हूं? मुझे एहसास है कि वे नहीं कहते हैं, ओ (0), लेकिन सिर्फ 0, मुझे लगता है कि यह एक निरंतर है, लेकिन ओ() नोटेशन से स्विच करने के लिए कोई भी नहीं है, यह बहुत बेवकूफ है। – nlucaroni
बढ़िया! लॉग केवल 1 से कम तर्कों के लिए नकारात्मक है लेकिन 1/ε ऐसा नहीं है क्योंकि 0 <ε <1 तो 1 <ε⁻¹ <∞। –
ओह, ज़ाहिर है। हाँ आप सही है। मैं स्पष्ट रूप से (या मुझे नहीं लगता), सोच लॉग (ε) था। तो, जब वह कहता है कि सभी परिचालनों को लागत 0 अमूर्त कर दिया गया है, तो वह निरंतर कारक के बारे में बात कर रहा है? – nlucaroni