मेरे पास तत्वों की एक सूची है (1, 2, 3), और मुझे उस सूची के सुपरसेट (पावरसेट) (तत्वों को दोहराए बिना) प्राप्त करने की आवश्यकता है। तो बुनियादी तौर पर मैं सूचियाँ की एक सूची है कि लगता है कि बनाने की जरूरत:सूची के सभी संभावित सबसेट प्रिंट करना
{1}
{2}
{3}
{1, 2}
{1, 3}
{2, 3}
{1, 2, 3}
सबसे अच्छा क्या है यह लागू करने के लिए जिस तरह से (इस मामले में सादगी> दक्षता, सूची बहुत बड़ा नहीं होगा)? पसंदीदा में जावा में, लेकिन किसी भी भाषा में एक समाधान उपयोगी होगा।
आप उस सूची के सभी सबसेट चाहते हैं। मैं रिकर्सन का सुझाव दूंगा। हालांकि, यदि आप 30-40 से अधिक तत्वों से बात कर रहे हैं, तो आप बड़े (डेटा के 1TB डेटा) से निपटने में सक्षम नहीं होंगे। इसका क्या उपयोग किया जाता है? –
यह डेटा संरचना जिसे आप ढूंढ रहे हैं उसे पावरसेट कहा जाता है (भिन्नता यह है कि इसमें एक खाली सेट भी शामिल है)। एसओ पर पहले से ही चर्चा की जा चुकी है। –
धन्यवाद सही दिशा में मुझे इंगित करने के लिए जेनज़न ... मैंने पाया http://stackoverflow.com/questions/1670862/obtaining-powerset-of-a-set-in-java। – Steve