इस ट्यूटोरियल में, हम सीखेंगे कि कैसे दो अवर्गीकृत सरणियों के मिलन और प्रतिच्छेदन के लिए एक प्रोग्राम लिखना है। आइए एक उदाहरण देखें।
इनपुट
arr_one = [1, 2, 3, 4, 5] arr_two = [3, 4, 5, 6, 7]
आउटपुट
union: 1 2 3 4 5 6 7 intersection: 3 4 5
आइए समस्या को हल करने के लिए चरणों को देखें।
संघ
-
यादृच्छिक मानों के साथ दो सरणियों को प्रारंभ करें।
-
Union_result नामक एक खाली सरणी बनाएं।
-
पहली सरणी पर पुनरावृति करें और उसमें प्रत्येक तत्व जोड़ें।
-
अनुभाग सरणी पर पुनरावृति करें और तत्व जोड़ें यदि यह Union_result सरणी में मौजूद नहीं है।
-
Union_result सरणी प्रिंट करें।
चौराहे
-
यादृच्छिक मानों के साथ दो सरणियों को प्रारंभ करें।
-
चौराहा_result नामक एक खाली सरणी बनाएं।
-
पहली सरणी पर पुनरावृति करें और दूसरी सरणी में मौजूद होने पर तत्व जोड़ें।
-
चौराहा_परिणाम सरणी प्रिंट करें।
उदाहरण
नीचे दिया गया कोड देखें
#include <bits/stdc++.h>
using namespace std;
int isElementPresentInArray(int arr[], int arr_length, int element) {
for (int i = 0; i < arr_length; ++i) {
if (arr[i] == element) {
return true;
}
}
return false;
}
void findUnionAndIntersection(int arr_one[], int arr_one_length, int arr_two[], int arr_two_length) {
// union
int union_result[arr_one_length + arr_two_length] = {};
for (int i = 0; i < arr_one_length; ++i) {
union_result[i] = arr_one[i];
}
int union_index = arr_one_length;
for (int i = 0; i < arr_two_length; ++i) {
if (!isElementPresentInArray(arr_one, arr_one_length, arr_two[i])) {
union_result[union_index++] = arr_two[i];
}
}
cout << "Union: ";
for (int i = 0; i < union_index; ++i) {
cout << union_result[i] << " ";
}
cout << endl;
// intersection
int intersection_result[arr_one_length + arr_two_length] = {};
int intersection_index = 0;
for (int i = 0; i < arr_one_length; ++i) {
if (isElementPresentInArray(arr_two, arr_two_length, arr_two[i])) {
intersection_result[intersection_index++] = arr_one[i];
}
}
cout << "Intersection: ";
for (int i = 0; i < intersection_index; ++i) {
cout << intersection_result[i] << " ";
}
cout << endl;
}
int main() {
int arr_one[] = {1, 2, 3, 4, 5};
int arr_two[] = {3, 4, 5, 6, 7};
findUnionAndIntersection(arr_one, 5, arr_two, 5);
return 0;
} आउटपुट
यदि आप उपरोक्त प्रोग्राम को निष्पादित करते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
Union: 1 2 3 4 5 6 7 Intersection: 1 2 3 4 5
निष्कर्ष
यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।