मैं PriorityQueue कार्यान्वयन की तलाश में हूं जो Set भी है।क्या कोई कतार (प्राथमिकता क्यूई) कार्यान्वयन है जो एक सेट भी है?
compareTo
कार्यान्वयन अगर उसके तत्वों को equals
के कार्यान्वयन के साथ संगत होने की आवश्यकता नहीं होनी चाहिए।
क्या जावा के लिए कहीं ऐसा कोई कार्यान्वयन है?
अद्यतन: मैंने अब इसे सॉर्टेडसेट का उपयोग आंतरिक संग्रह के रूप में लागू किया है। तो मुझे कतार इंटरफ़ेस को संतुष्ट करने के लिए केवल गायब विधियों को लागू करना पड़ा। मैं यह भी उल्लेख करना भूल गया कि इसे एक बाध्य कतार भी होनी चाहिए, इसलिए इसमें क्षमता होती है और यदि क्षमता तक पहुंच जाती है तो सेट के अंतिम तत्व को त्याग दिया जाता है।
लेकिन वस्तुओं को कतार और सेट के बीच साझा नहीं किया जाता है ... वे पूरी तरह से असंबंधित हैं ... यह एक प्रकार का (गलत) एकाधिक विरासत है? – dfa
@dfa ऑब्जेक्ट्स कतार और सेट के बीच साझा किए जाते हैं ... इसका सिर्फ उनका संदर्भ दो सेटों में संग्रहीत होता है ... मेरा सुझाव बिल्कुल एंड्रॉस_D जैसा ही है - यह जावा के संग्रह कार्यों में उपयोग किया जाने वाला एक बहुत ही सामान्य समाधान है। यदि जावा के संग्रह जहां विस्तार करना और अपना बनाना आसान है तो यह इतना हैकिश नहीं होगा ... – Petriborg
इससे मुझे ज्यादा समझ नहीं आती है। एक प्राथमिकता कतार पहले से ही क्रमबद्ध है, इसलिए आपको केवल एक सामान्य सेट की आवश्यकता होगी। इसके अलावा मुझे लगता है कि मेरे मामले में दो संग्रह होने के लिए ओवरहेड उच्च होगा, मेरी वस्तुएं अपेक्षाकृत छोटी हैं, लेकिन मेरे पास बहुत कुछ है। – Mauli