From fe5066521ae7da318fd50f94f2abb00f2219037a Mon Sep 17 00:00:00 2001 From: Ayush Yadav <65528804+ayushyadav2001@users.noreply.github.com> Date: Thu, 13 Oct 2022 11:35:55 +0530 Subject: [PATCH] Added Set and Multi Set and Bit Manipulation --- SET Multiset/MaxSumSlideingWindow | Bin 0 -> 56552 bytes SET Multiset/MaxSumSlideingWindow.cpp | 38 +++++++++ SET Multiset/allocateminimumPages | Bin 0 -> 56016 bytes SET Multiset/allocateminimumPages.cpp | 70 +++++++++++++++++ SET Multiset/binarySearchChhallange1 | Bin 0 -> 56840 bytes SET Multiset/binarySearchChhallange1.cpp | 53 +++++++++++++ SET Multiset/bstChallange3 | Bin 0 -> 56616 bytes SET Multiset/bstChallange3.cpp | 53 +++++++++++++ SET Multiset/bstChallange5 | Bin 0 -> 56384 bytes SET Multiset/bstChallange5.cpp | 31 ++++++++ SET Multiset/bstchallange4 | Bin 0 -> 56384 bytes SET Multiset/bstchallange4.cpp | 47 +++++++++++ SET Multiset/minimumsubArraySlideingwindow | Bin 0 -> 56400 bytes .../minimumsubArraySlideingwindow.cpp | 44 +++++++++++ SET Multiset/multiSet | Bin 0 -> 68480 bytes SET Multiset/multiSet.cpp | 22 ++++++ .../numberformedfromSubArraydivisibleby3 | Bin 0 -> 66808 bytes .../numberformedfromSubArraydivisibleby3.cpp | 58 ++++++++++++++ SET Multiset/palindromicaConcatenation | Bin 0 -> 66320 bytes SET Multiset/palindromicaConcatenation.cpp | 67 ++++++++++++++++ SET Multiset/perfectNumberinSubArray | Bin 0 -> 56760 bytes SET Multiset/perfectNumberinSubArray.cpp | 74 ++++++++++++++++++ SET Multiset/set | Bin 0 -> 90760 bytes SET Multiset/set.cpp | 48 ++++++++++++ SET Multiset/tempCodeRunnerFile.cpp | 1 + SET Multiset/unorderset | Bin 0 -> 73656 bytes SET Multiset/unorderset.cpp | 21 +++++ 27 files changed, 627 insertions(+) create mode 100644 SET Multiset/MaxSumSlideingWindow create mode 100644 SET Multiset/MaxSumSlideingWindow.cpp create mode 100644 SET Multiset/allocateminimumPages create mode 100644 SET Multiset/allocateminimumPages.cpp create mode 100644 SET Multiset/binarySearchChhallange1 create mode 100644 SET Multiset/binarySearchChhallange1.cpp create mode 100644 SET Multiset/bstChallange3 create mode 100644 SET Multiset/bstChallange3.cpp create mode 100644 SET Multiset/bstChallange5 create mode 100644 SET Multiset/bstChallange5.cpp create mode 100644 SET Multiset/bstchallange4 create mode 100644 SET Multiset/bstchallange4.cpp create mode 100644 SET Multiset/minimumsubArraySlideingwindow create mode 100644 SET Multiset/minimumsubArraySlideingwindow.cpp create mode 100644 SET Multiset/multiSet create mode 100644 SET Multiset/multiSet.cpp create mode 100644 SET Multiset/numberformedfromSubArraydivisibleby3 create mode 100644 SET Multiset/numberformedfromSubArraydivisibleby3.cpp create mode 100644 SET Multiset/palindromicaConcatenation create mode 100644 SET Multiset/palindromicaConcatenation.cpp create mode 100644 SET Multiset/perfectNumberinSubArray create mode 100644 SET Multiset/perfectNumberinSubArray.cpp create mode 100644 SET Multiset/set create mode 100644 SET Multiset/set.cpp create mode 100644 SET Multiset/tempCodeRunnerFile.cpp create mode 100644 SET Multiset/unorderset create mode 100644 SET Multiset/unorderset.cpp diff --git a/SET Multiset/MaxSumSlideingWindow b/SET Multiset/MaxSumSlideingWindow new file mode 100644 index 0000000000000000000000000000000000000000..b313191d8061d62de8a9ab53a08a4faf2dddfa58 GIT binary patch literal 56552 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 +#include +using namespace std; + +void maxSubarraySum(int arr[], int n, int k, int x) +{ + int sum = 0, ans = 0; + for (int i = 0; i < k; i++) + { + sum += arr[i]; + } + if (sum < x) + { + ans = sum; + } + for (int i = k; i < n; i++) + { + sum = sum - arr[i - k]; + sum = sum + arr[i]; + if (sum < x) + { + ans = max(ans, sum); + } + } + cout << ans << " : is msximum sub array" << endl; +} + +int main() +{ + int arr[] = {7, 5, 4, 6, 8, 9}; + int k = 3; + int x = 20; + int n = 6; + maxSubarraySum(arr, n, k, x); + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/allocateminimumPages b/SET Multiset/allocateminimumPages new file mode 100644 index 0000000000000000000000000000000000000000..dd7cd84080a7cbde845244eb4f13d6e20e6e3414 GIT binary patch literal 56016 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 +#include +#include +#include +using namespace std; +bool isPossible(int arr[], int n, int m, int min) +{ + int studentsRequired = 1, sum = 0; + for (int i = 0; i < n; i++) + { + if (arr[i] > min) + { + + return false; + } + if (sum + arr[i] > min) + { + studentsRequired++; + sum = arr[i]; + } + + if (studentsRequired > m) + { + return false; + } + + else + { + sum += arr[i]; + } + } + return true; +} + +int allocateminimumPages(int arr[], int n, int m) +{ + int sum = 0; + if (n < m) + { + return -1; + } + for (int i = 0; i < n; i++) + { + sum += arr[i]; + } + int start = 0, end = sum, ans = INT_MAX; + while (start <= end) + { + int mid = (start + end) / 2; + if (isPossible(arr, n, m, mid)) + { + ans = min(ans, mid); + end = mid - 1; + } + else + { + start = mid + 1; + } + } + return ans; +} +int main() +{ + int arr[] = {12, 34, 67, 90}; + int n = 4; + int m = 2; + cout << "The minimum no of pages : " << allocateminimumPages(arr, n, m); + return 0; +} \ No newline at end of file diff --git a/SET Multiset/binarySearchChhallange1 b/SET Multiset/binarySearchChhallange1 new file mode 100644 index 0000000000000000000000000000000000000000..5fef2172c71ca4acc33c00d5a9f5bbac45fe6736 GIT binary patch literal 56840 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 Q@jjG{?Zv7Gry`8~7X(a5N&o-= literal 0 HcmV?d00001 diff --git a/SET Multiset/binarySearchChhallange1.cpp b/SET Multiset/binarySearchChhallange1.cpp new file mode 100644 index 0000000..c97838e --- /dev/null +++ b/SET Multiset/binarySearchChhallange1.cpp @@ -0,0 +1,53 @@ +#include +#include +#include +using namespace std; + +bool isFeasible(int mid, int arr[], int n, int k) +{ + int pos = arr[0], elements = 1; + for (int i = 1; i < n; i++) + { + if (arr[i] - pos >= mid) + { + pos = arr[i]; + elements++; + if (elements == k) + { + return true; + } + } + } + return false; +} + +int largestMinDistance(int arr[], int n, int k) +{ + sort(arr, arr + n); + int result = -1; + int left = 1, right = arr[n - 1]; + while (left < right) + { + int mid = (left + right) / 2; + if (isFeasible(mid, arr, n, k)) + { + result = max(result, mid); + left = mid + 1; + } + else + { + right = mid; + } + } + return result; +} + +int main() +{ + int arr[] = {1, 2, 8, 4, 9}; + int n = 5; + int k = 3; + cout << "largest min distance is : " << largestMinDistance(arr, n, k) << endl; + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/bstChallange3 b/SET Multiset/bstChallange3 new file mode 100644 index 0000000000000000000000000000000000000000..f1be59263de413abd1fea93350d5513d72c31548 GIT binary patch literal 56616 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%0D6L=$ly9;;^)dl+u_ z;8y6w=UL|6<$qpxG2_lJ>n_pI_^UeSpvtD}>Kl%BvHFJLFmA;NWA*m&`bhnp3E_!) zIp#lEj|{!YHPVmUL_Y(4Iak5u8*{aJJKKD@2Cw&MgU_4v`aE7At~Ot%$K&;QIs;yx z7ap&t)9dwmaxR}wH1y9J7`q%FtRYO_t(lTIDZf+mmkUIEQR2UrI3T}svrpn-`Q4l! z0e{hzV(FDC8fNI4tpm#Lr6X-5}(xStQc8N&Je$BNBTq6Y*mbACY)M;twP) zO1yNjNY8E(^8FHfBt9Tn>%VwJ$lByL+R@EVSDtn^)|dn7J> zAL;>#OW%olri5jGSP0o}*yph9FRc=nzWekr$509vyzD8C8SC^3{46m3_^?W8UJ@90 zaTOf+69?XgoFYi1KkUFib>L4N_?G(W{QDjFc?bT91Ha?I?>X>|XiK|(n;p2_fx8`e zp92pGj9Q569~}6H4*aqMqZ?A!qwd1cWDL#7$Od4Z3?|56W(=mp0&tt)Hp5|PV;bCT zaJR!@Xk$URZE$zMwZiR$+XB}Nw-s(X+zz-q;VxyFUWWaRf9?!Sq34){D;px`R5fQJ zI(JezL7h8+eTu83xXrGSfB6jY?ldsU+AbC*pzUr{+XB~;jXY)5R#%InR_Mx>(g zMQ=eaRuo?%+k{-mw&Oyxl{Xw0n$fY$DDJMiju8s`a=ENqBxD% zzFWthkhX=DSm*IX?Hw)nZo7>(lsK`_Y`LXuY{#+xjv49nwkQgcMK$Z~&2-qo)0cW@ zC0RHIjiM!OWc>N5BP}nyw+mZATV0?;G8Ex^MjTFI7he1HK-1`8WP?1B>B@HNQS7ex zQ9|i-hE76I*Y+0rqhp-1jc5qAmswLxZ5C-$P9-~gb9)mGU+gTE3q#)w^`vDbB}E&= z@dyr5&QZIy-O*UAI#2D&*4Aj$Ue{f!g);UKto6~6EIGxhP?CmkH(<8JD4vuV=G%qP@BcV*FsxFm= z6!rXH(6q^+>3Xo8=u4*1`HTq6Kbqple)Fn8vyLN{q=s&*ZSiw4ExH~txnw~^v! zxzroi^3!CSK{PeZp;v1e^bA;(x^-St7^kPt9<3Kgtp5*;k0g$ohyOqj(4wJ?f$C%bs_7Frt@59eCo8` zoQhxquC|uSoK_?9(!$uPSEezpweFJlb_?zYgt*sHX9@_I2cQO^-i$xEPCHVC}i4NTi literal 0 HcmV?d00001 diff --git a/SET Multiset/bstChallange3.cpp b/SET Multiset/bstChallange3.cpp new file mode 100644 index 0000000..f491b6e --- /dev/null +++ b/SET Multiset/bstChallange3.cpp @@ -0,0 +1,53 @@ +//Binary search tree challenge 3 Painters partition problem +#include +#include +using namespace std; +int findFeasible(int boards[], int n, int limit) +{ + int sum = 0, painters = 1; + for (int i = 0; i < n; i++) + { + sum += boards[i]; + if (sum > limit) + { + sum = boards[i]; + painters++; + } + } + return painters; +} + +int paintersPartition(int boards[], int n, int m) +{ + int totalLength = 0, k = 0; + for (int i = 0; i < n; i++) + { + k = max(k, boards[i]); + totalLength += boards[i]; + } + int low = k, high = totalLength; + while (low < high) + { + int mid = (high + low) / 2; + int painters = findFeasible(boards, n, mid); + if (painters <= m) + { + high = mid; + } + else + { + low = mid + 1; + } + } + return low; +} + +int main() +{ + int arr[] = {10, 20, 30, 40}; + int n = 4; + int m = 2; + cout << "Minimum time to paint the boards : " << paintersPartition(arr, n, m) << endl; + cout << endl; + return 0; +} \ No newline at end of file diff --git a/SET Multiset/bstChallange5 b/SET Multiset/bstChallange5 new file mode 100644 index 0000000000000000000000000000000000000000..225fdd42b44a8f83bff534d9e78007d9c740172b GIT binary patch literal 56384 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 Z#B5y}RlgO=^DS_HJbVay9vleZ`d`=*FSh^y literal 0 HcmV?d00001 diff --git a/SET Multiset/bstChallange5.cpp b/SET Multiset/bstChallange5.cpp new file mode 100644 index 0000000..3db589c --- /dev/null +++ b/SET Multiset/bstChallange5.cpp @@ -0,0 +1,31 @@ +//BST challange 5 find the peak element +#include +#include +using namespace std; + +int findPeakElement(int arr[], int low, int high, int n) +{ + int mid = low + (high - low) / 2; + if ((mid == 0 || arr[mid - 1] <= arr[mid]) && (mid == n - 1 || arr[mid + 1] <= arr[mid])) + { + return mid; + } + else if (mid > 0 && arr[mid - 1] > arr[mid]) + { + + return findPeakElement(arr, low, mid - 1, n); + } + else + { + return findPeakElement(arr, mid + 1, high, n); + } +} + +int main() +{ + int arr[] = {0, 6, 8, 5, 7, 9}; + int n = 6; + cout << "Peak element index is :" << findPeakElement(arr, 0, n - 1, n) << endl; + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/bstchallange4 b/SET Multiset/bstchallange4 new file mode 100644 index 0000000000000000000000000000000000000000..94ee35fae16b2d824e9c350890cfb20e98a0a032 GIT binary patch literal 56384 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 literal 0 HcmV?d00001 diff --git a/SET Multiset/bstchallange4.cpp b/SET Multiset/bstchallange4.cpp new file mode 100644 index 0000000..e25afb8 --- /dev/null +++ b/SET Multiset/bstchallange4.cpp @@ -0,0 +1,47 @@ +//bst challange 4 search and rotated array +#include +#include +using namespace std; + +int searchInRotatedArray(int arr[], int key, int left, int right) +{ + if (left > right) + { + return -1; + } + int mid = (left + right) / 2; + if (arr[mid] == key) + { + return mid; + } + if (arr[left] <= arr[mid]) + { + if (key >= arr[left] && key <= arr[mid]) + { + return searchInRotatedArray(arr, key, left, mid - 1); + } + return searchInRotatedArray(arr, key, mid + 1, right); + } + if (key >= arr[mid] && key <= arr[right]) + { + return searchInRotatedArray(arr, key, mid + 1, right); + } + return searchInRotatedArray(arr, key, left, mid - 1); +} +int main() +{ + int arr[] = {6, 7, 8, 9, 10, 1, 2, 5}; + int n = 8; + int key = 8; + int idx = searchInRotatedArray(arr, key, 0, n - 1); + if (idx == -1) + { + cout << "Key does not exist" << endl; + } + else + { + cout << "Key is present at idx : " << idx << endl; + } + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/minimumsubArraySlideingwindow b/SET Multiset/minimumsubArraySlideingwindow new file mode 100644 index 0000000000000000000000000000000000000000..be364a2a2f3dcf6bce943e640186291f32b33975 GIT binary patch literal 56400 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 vx-hxBsR`%RL8Bl4R||ASj0R?pX +#include +#include +using namespace std; +int smallestSubArrayWithSum(int arr[], int n, int x) +{ + int sum = 0, minLength = n + 1, start = 0, end = 0; + while (end < n) + { + while (sum <= x && end < n) + { + sum += arr[end++]; + } + while (sum > x && start < n) + { + if (end - start < minLength) + { + minLength = end - start; + } + sum -= arr[start++]; + } + } + return minLength; +} + +int main() +{ + int arr[] = {1, 4, 45, 6, 10, 19}; + + int x = 51; + int n = 6; + int minLength = smallestSubArrayWithSum(arr, n, x); + if (minLength == n + 1) + { + cout << "No such array exist" << endl; + } + else + { + cout << "The Smallest Length is :" << minLength << endl; + } + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/multiSet b/SET Multiset/multiSet new file mode 100644 index 0000000000000000000000000000000000000000..f08b4a4bd0714216c083ad1c8b55e9ebd59440a7 GIT binary patch literal 68480 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 +#include +#include +using namespace std; +int main() +{ + multiset s; + s.insert(1); + s.insert(2); + s.insert(3); + s.insert(3); + s.insert(4); + s.insert(5); + // s.erase(3); + s.erase(s.find(3)); + for (auto i : s) + { + cout << i << endl; + } + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/numberformedfromSubArraydivisibleby3 b/SET Multiset/numberformedfromSubArraydivisibleby3 new file mode 100644 index 0000000000000000000000000000000000000000..0a6a5a6b0adf7e6d61a865c68a42382ddd9ed657 GIT binary patch literal 66808 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 Y$w;`N5h^HdIP_v_gS9nXro`|60O(38LI3~& literal 0 HcmV?d00001 diff --git a/SET Multiset/numberformedfromSubArraydivisibleby3.cpp b/SET Multiset/numberformedfromSubArraydivisibleby3.cpp new file mode 100644 index 0000000..dd8c677 --- /dev/null +++ b/SET Multiset/numberformedfromSubArraydivisibleby3.cpp @@ -0,0 +1,58 @@ +//number formed from Sub Array divisible by 3 slideing window challange 3 time complexity O(n) +#include +#include +#include +using namespace std; + +void computeNumberFromSubArray(vector arr, int k) +{ + pair ans; + int sum = 0; + + for (int i = 0; i < k; i++) + { + sum += arr[i]; + } + bool found = false; + if (sum % 3 == 0) + { + ans = make_pair(0, k - 1); + found = true; + } + for (int j = k; j < arr.size(); j++) + { + if (found) + { + break; + } + sum = sum + arr[j] - arr[j - k]; + if (sum % 3 == 0) + { + ans = make_pair(j - k + 1, j); + found = true; + } + } + if (!found) + { + ans = make_pair(-1, 0); + } + if (ans.first == -1) + { + cout << "No such element exists" << endl; + } + else + { + for (int i = ans.first; i <= ans.second; i++) + { + cout << arr[i] << " "; + } + cout << endl; + } +} +int main() +{ + vector arr = {84, 23, 45, 12, 56, 82}; + int k = 3; + computeNumberFromSubArray(arr, k); + return 0; +} \ No newline at end of file diff --git a/SET Multiset/palindromicaConcatenation b/SET Multiset/palindromicaConcatenation new file mode 100644 index 0000000000000000000000000000000000000000..b31a5561b6b4a629fd1c40501d59627e9deb0464 GIT binary patch literal 66320 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 +#include +#include +#include +using namespace std; +bool isPalindrome(int n) +{ + int temp = n; + int number = 0; + while (temp > 0) + { + number = number * 10 + temp % 10; + temp = temp / 10; + } + if (number == n) + { + return true; + } + else + { + return false; + } +} + +int findPalindromicSubArray(vector arr, int k) +{ + int num = 0; + for (int i = 0; i < k; i++) + { + num = num * 10 + arr[i]; + } + if (isPalindrome(num)) + { + return 0; + } + for (int j = k; j < arr.size(); j++) + { + num = (num % (int)pow(10, k - 1)) * 10 + arr[j]; + if (isPalindrome(num)) + { + return j - k + 1; + } + } + return -1; +} + +int main() +{ + vector arr = {2, 3, 5, 1, 1, 5}; + int k = 4; + int ans = findPalindromicSubArray(arr, k); + if (ans == -1) + { + cout << "Palindromic sub array dos't exist" << endl; + } + else + { + for (int i = ans; i < ans + k; i++) + { + cout << arr[i] << " "; + } + cout << endl; + } + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/perfectNumberinSubArray b/SET Multiset/perfectNumberinSubArray new file mode 100644 index 0000000000000000000000000000000000000000..b0737babd5526bd1056c5fbcb3df7abe8030b100 GIT binary patch literal 56760 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 YqNuthq8gz--@NxH^!?cN;K+mhH!!%1mH+?% literal 0 HcmV?d00001 diff --git a/SET Multiset/perfectNumberinSubArray.cpp b/SET Multiset/perfectNumberinSubArray.cpp new file mode 100644 index 0000000..a60d4eb --- /dev/null +++ b/SET Multiset/perfectNumberinSubArray.cpp @@ -0,0 +1,74 @@ +// Perfect Number in sub array slideing window challange +#include +#include +using namespace std; +bool isNumberPerfect(int n) +{ + int sum = 1; + for (int i = 2; i < sqrt(n); i++) + { + if (n % i == 0) + { + if (i == n / i) + { + sum += i; + } + else + { + sum += i + n / i; + } + } + } + if (sum == n && n != 1) + { + return true; + } + + return false; +} +int maxSum(int arr[], int n, int k) +{ + if (n < k) + { + cout << "Invalid values" << endl; + return -1; + } + int res = 0; + for (int i = 0; i < k; i++) + { + res += arr[i]; + } + int sum = res; + for (int i = 0; i < k; i++) + { + sum += arr[i] - arr[i - k]; + res = max(res, sum); + } + return res; +} + +int maxNumberofPerfects(int arr[], int n, int k) +{ + for (int i = 0; i < n; i++) + { + if (isNumberPerfect(arr[i])) + { + arr[i] = 1; + } + else + { + arr[i] = 0; + } + } + return maxSum(arr, n, k); +} + +int main() +{ + int arr[] = {28, 2, 3, 6, 496, 99, 8128, 24}; + int k = 4; + int n = 8; + cout << "Maiximum number of perfects :" << maxNumberofPerfects(arr, n, k) << endl; + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/set b/SET Multiset/set new file mode 100644 index 0000000000000000000000000000000000000000..a85493e88da18fede34d0ff634c91a664bf4a9e5 GIT binary patch literal 90760 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 WtE!=K{9#F=BfbM(8-4AqY5yDL`f4x$ literal 0 HcmV?d00001 diff --git a/SET Multiset/set.cpp b/SET Multiset/set.cpp new file mode 100644 index 0000000..792f0fb --- /dev/null +++ b/SET Multiset/set.cpp @@ -0,0 +1,48 @@ +#include +#include +#include +using namespace std; +int main() +{ + // set s; + set> s; + s.insert(1); + s.insert(2); + s.insert(3); + s.insert(4); + // for (auto i : s) + // { + // cout << i << " "; + // } + // cout << "\n"; + //second method of printing in set + // for (auto i = s.begin(); i != s.end(); i++) + // { + // cout << *i << " \n"; + // } + // reverse + // for (auto i = s.rbegin(); i != s.rend(); i++) + // { + // cout << *i << " "; + // } + // cout << endl; + // size + // cout << s.size() << "\n"; + + //uppper and lower bound + + // cout << s.lower_bound(2) << endl; + // cout << s.lower_bound(3) << endl; + // cout << s.upper_bound(4) << endl; + // cout << s.upper_bound(4) == s.end() << " \n"; + //erase will erase something what you want + s.erase(1); + + for (auto i : s) + { + cout << i << " "; + } + cout << "\n"; + + return 0; +} \ No newline at end of file diff --git a/SET Multiset/tempCodeRunnerFile.cpp b/SET Multiset/tempCodeRunnerFile.cpp new file mode 100644 index 0000000..36c2af4 --- /dev/null +++ b/SET Multiset/tempCodeRunnerFile.cpp @@ -0,0 +1 @@ + s.ghar se bahar hai kon return 0; \ No newline at end of file diff --git a/SET Multiset/unorderset b/SET Multiset/unorderset new file mode 100644 index 0000000000000000000000000000000000000000..28c2aa10e8be9220e41a4e443bbe481730b91119 GIT binary patch literal 73656 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 literal 0 HcmV?d00001 diff --git a/SET Multiset/unorderset.cpp b/SET Multiset/unorderset.cpp new file mode 100644 index 0000000..f1276cc --- /dev/null +++ b/SET Multiset/unorderset.cpp @@ -0,0 +1,21 @@ +#include +#include +#include +using namespace std; +int main() + +{ + unordered_set s; + s.insert(1); + s.insert(2); + s.insert(3); + s.insert(3); + s.insert(4); + s.erase(s.begin()); + for (auto i : s) + { + cout << i << endl; + } + + return 0; +} \ No newline at end of file