Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

दो सेट्स के यूनियन की गणना के लिए Java प्रोग्राम


इस लेख में, हम समझेंगे कि दो सेट्स के यूनियन की गणना कैसे करें। एक Set एक संग्रह है जिसमें डुप्लिकेट एलिमेंट्स नहीं हो सकते। यह गणितीय सेट अमूर्तता को मॉडल करता है। Set इंटरफेस में केवल Collection से विरासत में मिले मेथड्स होते हैं और यह प्रतिबंध जोड़ता है कि डुप्लिकेट एलिमेंट्स निषिद्ध हैं।

नीचे इसका प्रदर्शन है:

मान लीजिए हमारा इनपुट है:

पहला सेट: [2, 4]
दूसरा सेट: [1, 3]

वांछित आउटपुट होगा:

दो सेट्स का यूनियन है: [1, 2, 3, 4]

एल्गोरिदम

चरण 1 - शुरू
चरण 2 - घोषित करें
चरण 3 - मान परिभाषित करें
चरण 4 - दो सेट्स बनाएं, और 'add' मेथड का उपयोग करके एलिमेंट्स जोड़ें
चरण 5 - कंसोल पर सेट्स प्रदर्शित करें
चरण 6 - 'addAll' मेथड का उपयोग करके दोनों सेट्स जोड़ें
चरण 7 - कंसोल पर सेट्स के योग को प्रदर्शित करें
चरण 8 - रुकें

उदाहरण 1

यहाँ, हम सभी ऑपरेशन्स को 'main' फंक्शन के तहत बांधते हैं।

import java.util.HashSet;
import java.util.Set;

public class Demo {
    public static void main(String[] args) {
        System.out.println("आवश्यक पैकेज आयात किए गए हैं");
        Set input_set_1 = new HashSet<>();
        input_set_1.add(2);
        input_set_1.add(4);
        System.out.println("पहला सेट परिभाषित है: " + input_set_1);
        
        Set input_set_2 = new HashSet<>();
        input_set_2.add(1);
        input_set_2.add(3);
        System.out.println("दूसरा सेट परिभाषित है: " + input_set_2);
        
        input_set_2.addAll(input_set_1);
        System.out.println("\nदो सेट्स का यूनियन है: \n" + input_set_2);
    }
}

आउटपुट

आवश्यक पैकेज आयात किए गए हैं
पहला सेट परिभाषित है: [2, 4]
दूसरा सेट परिभाषित है: [1, 3]
दो सेट्स का यूनियन है: [1, 2, 3, 4]

उदाहरण 2

यहाँ, हम ऑपरेशन्स को फंक्शन्स में एनकैप्सुलेट करते हैं जो ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग प्रदर्शित करते हैं।

import java.util.HashSet;
import java.util.Set;

public class Demo {
    static void union_sets(Set input_set_1, Set input_set_2) {
        input_set_2.addAll(input_set_1);
        System.out.println("\nदो सेट्स का यूनियन है: \n" + input_set_2);
    }
    
    public static void main(String[] args) {
        System.out.println("आवश्यक पैकेज आयात किए गए हैं");
        Set input_set_1 = new HashSet<>();
        input_set_1.add(2);
        input_set_1.add(4);
        System.out.println("पहला सेट परिभाषित है: " + input_set_1);
        
        Set input_set_2 = new HashSet<>();
        input_set_2.add(1);
        input_set_2.add(3);
        System.out.println("दूसरा सेट परिभाषित है: " + input_set_2);
        
        union_sets(input_set_1, input_set_2);
    }
}

आउटपुट

आवश्यक पैकेज आयात किए गए हैं
पहला सेट परिभाषित है: [2, 4]
दूसरा सेट परिभाषित है: [1, 3]
दो सेट्स का यूनियन है: [1, 2, 3, 4]

अतिरिक्त जानकारी

  • HashSet: अनऑर्डर्ड, O(1) औसत प्रदर्शन, डुप्लिकेट्स की अनुमति नहीं
  • LinkedHashSet: इंसर्शन ऑर्डर बनाए रखता है
  • TreeSet: सॉर्टेड ऑर्डर, O(log n) प्रदर्शन
  • addAll(): यूनियन ऑपरेशन करता है, मूल सेट को संशोधित करता है
  • Java 8+ Stream: Stream.concat(set1.stream(), set2.stream()).collect(Collectors.toSet())

सेट ऑपरेशन्स तुलना

ऑपरेशनमेथडविवरण
यूनियनaddAll()दोनों सेट्स के सभी यूनिक एलिमेंट्स
इंटरसेक्शनretainAll()दोनों में सामान्य एलिमेंट्स
डिफरेंसremoveAll()पहले में जो दूसरे में नहीं
सबसेट चेकcontainsAll()सभी एलिमेंट्स मौजूद हैं?
  1. - जावा प्रोग्राम से दो बाइनरी स्ट्रिंग्स (Binary Strings) जोड़ना

    इस लेख में हम समझेंगे कि जावा में दो बाइनरी स्ट्रिंग्स को कैसे जोड़ा जाता है। एक बाइनरी स्ट्रिंग बाइट्स 0 और 1 में दर्शाई गई संख्याओं का अनुक्रम होती है। नीचे इसका प्रदर्शन दिया गया है: इनपुट मान लीजिए हमारा इनपुट है: 10101 10001 आउटपुट वांछित आउटपुट होगा: 100110 एल्गोरिदम चरण 1 - प्रारंभ चरण 2 - न

  1. - जावा में दो सेट्स को मर्ज करना

    जावा में दो सेट्स को मर्ज करने के लिए कोड निम्नलिखित है: उदाहरण import java.util.stream.*; import java.util.*; import java.io.*; public class Demo{ public static <T> Set<T> set_merge(Set<T> set_1, Set<T> set_2){ Set<T> my_set = set_1.stream().collect(C

  1. - जावा में चक्रवृद्धि ब्याज निकालने का प्रोग्राम

    जावा में चक्रवृद्धि ब्याज निकालने का प्रोग्राम निम्नलिखित है: उदाहरण import java.io.*; public class Demo{ public static void main(String args[]){ double princ = 456000, rt = 9.75, tm = 7; double comp_int = princ *(Math.pow((1 + rt / 100), tm)); System.out.println(दि