0% found this document useful (0 votes)
16 views

codes

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

codes

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 50

1) Reverse the Words in a String

#include <iostream>

using namespace std;

string reverse_words(string str) {

int N = str.length();

string result;

int i = 0;

while (i < N) {

while (i < N && str[i] == ' ') {

i++;

if (i >= N) {

break;

int j = i + 1;

while (j < N && str[j] != ' ') {

j++;

string sub = str.substr(i, j - i);

if (result.length() == 0) {

result = sub;

} else {

result = sub + ' ' + result;

i = j + 1;

return result;

int main() {
string str;

getline(cin, str);

string result = reverse_words(str);

cout << result << endl;

2) Valid Parenthesis Check

#include <iostream>

#include <stack>

using namespace std;

bool valid_parenthesis(string str) {

stack<char> st;

for (char ch : str) {

if (ch == '{' || ch == '[' || ch == '(') {

st.push(ch);

} else if (!st.empty()) {

char top = st.top();

if (ch == '}' && top == '{') {

st.pop();

} else if (ch == ']' && top == '[') {

st.pop();

} else if (ch == ')' && top == '(') {

st.pop();

} else {

return false;

return st.empty();

}
int main() {

string str;

cin >> str;

bool result = valid_parenthesis(str);

if (result) {

cout << "yes valid" << endl;

} else {

cout << "not valid" << endl;

3) Return K Largest Elements

#include <iostream>

using namespace std;

void bubbleSort(int arr[], int n) {

for (int i = 0; i < n - 1; i++) {

for (int j = 0; j < n - i - 1; j++) {

if (arr[j] < arr[j + 1]) {

swap(arr[j], arr[j + 1]);

void kLargest(int arr[], int n, int k) {

bubbleSort(arr, n);

for (int i = 0; i < k; i++) {

cout << arr[i] << " ";

}
}

int main() {

int arr[] = { 1, 23, 12, 9, 30, 2, 50 };

int n = sizeof(arr) / sizeof(arr[0]);

int k = 3;

kLargest(arr, n, k);

4) Frequency of Each Element in an Array

#include <bits/stdc++.h>

using namespace std;

void Frequency(int arr[], int n) {

unordered_map<int, int> map;

for (int i = 0; i < n; i++)

map[arr[i]]++;

for (auto x : map)

cout << x.first << " " << x.second << endl;

int main() {

int arr[] = {10, 5, 10, 15, 10, 5};

int n = sizeof(arr) / sizeof(arr[0]);

Frequency(arr, n);

return 0;

5) Find Minimum Number in an Array

#include <iostream>
using namespace std;

int find_min(int arr[], int n) {

int min = arr[0];

for (int i = 0; i < n; i++) {

if (arr[i] < min) {

min = arr[i];

return min;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

int result = find_min(arr, n);

cout << result << endl;

return 0;

6) Find Maximum Number in an Array

#include <iostream>

using namespace std;

int find_max(int arr[], int n) {

int max = arr[0];


for (int i = 0; i < n; i++) {

if (arr[i] > max) {

max = arr[i];

return max;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

int result = find_max(arr, n);

cout << result << endl;

return 0;

7) Find Second Maximum and Second Minimum

#include <bits/stdc++.h>

using namespace std;

int second_max(int arr[], int n) {

int max = INT_MIN;

int sc = INT_MIN;

for (int i = 0; i < n; i++) {

if (arr[i] > max) {

sc = max;

max = arr[i];
}

if (arr[i] > sc && arr[i] != max) {

sc = arr[i];

return sc;

int second_min(int arr[], int n) {

int min = INT_MAX;

int sm = INT_MAX;

for (int i = 0; i < n; i++) {

if (arr[i] < min) {

sm = min;

min = arr[i];

if (arr[i] < sm && arr[i] != min) {

sm = arr[i];

return sm;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

int result1 = second_max(arr, n);


int result2 = second_min(arr, n);

cout << result1 << endl;

cout << result2 << endl;

return 0;

8) Reverse the Given Array

#include <iostream>

using namespace std;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = n - 1; i >= 0; i--) {

cout << arr[i] << " ";

return 0;

9) Count Frequency of an Element in an Array

#include <iostream>

using namespace std;

int main() {

int n;
cin >> n;

int num;

cin >> num;

int arr[n];

int cnt = 0;

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

if (arr[i] == num) {

cnt++;

cout << cnt << endl;

return 0;

10) Sort the Given Array

#include <iostream>

using namespace std;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

for (int j = i + 1; j < n; j++) {


if (arr[j] < arr[i]) {

int temp = arr[j];

arr[j] = arr[i];

arr[i] = temp;

for (int i = 0; i < n; i++) {

cout << arr[i] << " ";

return 0;

11) Sum of Elements in an Array

#include <iostream>

using namespace std;

int main() {

int n;

cin >> n;

int arr[n];

int sum = 0;

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

sum += arr[i];

cout << sum << endl;

return 0;

}
12) Rotate K Elements in an Array

#include <iostream>

using namespace std;

int main() {

int n;

cin >> n;

int k;

cin >> k;

int arr[n];

int temp[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

temp[(i + k) % n] = arr[i];

for (int i = 0; i < n; i++) {

arr[i] = temp[i];

for (int i = 0; i < n; i++) {

cout << arr[i] << " ";

return 0;

13) Average of Elements in an Array

#include <iostream>

using namespace std;


int main() {

int n;

cin >> n;

int arr[n];

int sum = 0;

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

sum += arr[i];

double average = static_cast<double>(sum) / n; // Use double for average

cout << average << endl;

return 0;

14) Median of the Array

#include <iostream>

using namespace std;

int main() {

int n;

cin >> n;

int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

for (int i = 0; i < n; i++) {

for (int j = i + 1; j < n; j++) {

if (arr[i] > arr[j]) {

int temp = arr[i];


arr[i] = arr[j];

arr[j] = temp;

if (n % 2 == 0) {

cout << (arr[n / 2] + arr[n / 2 - 1]) / 2.0 << endl; // Corrected index for average

} else {

cout << arr[n / 2] << endl;

15) Remove Duplicates from an Array

#include <iostream>

using namespace std;

int remove_duplicates(int arr[], int n) {

if (n == 0) return 0; // Handle empty array case

int j = 0;

for (int i = 0; i < n - 1; i++) {

if (arr[i] != arr[i + 1]) {

arr[j++] = arr[i];

arr[j++] = arr[n - 1];

return j;

int main() {

int n;

cin >> n;
int arr[n];

for (int i = 0; i < n; i++) {

cin >> arr[i];

n = remove_duplicates(arr, n);

for (int i = 0; i < n; i++) {

cout << arr[i] << " ";

return 0;

16) Check Target Pair

#include <iostream>

using namespace std;

bool targetPair(int nums[], int size, int target) {

for (int i = 0; i < size - 1; i++) {

for (int j = i + 1; j < size; j++) {

if (nums[i] + nums[j] == target) {

return true;

return false;

int main() {

int nums[] = {1, 2, 3, 9};

int target = 8;
int size = sizeof(nums) / sizeof(nums[0]);

if (targetPair(nums, size, target)) {

cout << "Target pair exists." << endl;

} else {

cout << "Target pair does not exist." << endl;

return 0;

17) Fibonacci Series

#include <iostream>

using namespace std;

void printFibonacci(int n) {

int a = 0, b = 1, next;

cout << a << " " << b << " ";

for (int i = 2; i < n; ++i) {

next = a + b;

a = b;

b = next;

cout << next << " ";

cout << endl;

int main() {

int n = 10;

cout << "Fibonacci Series: ";


printFibonacci(n);

return 0;

Nth fibonacci number

#include <iostream>

using namespace std;

int fibonacci(int n) {

if (n == 0) {

return 0;

int a = 0, b = 1, next;

for (int i = 2; i <= n; ++i) {

next = a + b;

a = b;

b = next;

return b;

int main() {

int n = 10;

cout << "The " << n << "th Fibonacci number is " << fibonacci(n) << endl;

return 0;

18) Freq of an element


#include <iostream>

#include <unordered_map>

using namespace std;

int main() {

int nums[] = {1, 2, 3, 2, 2, 4, 1, 3, 5};

int size = sizeof(nums) / sizeof(nums[0]);

unordered_map<int, int> freq_map;

for (int i = 0; i < size; i++) {

freq_map[nums[i]]++;

int element = 2; // The element whose frequency we want to find

cout << "The frequency of " << element << " is " << freq_map[element] << endl;

return 0;

Using Loop

#include <iostream>

#include <unordered_map>

using namespace std;

int main() {

int nums[] = {1, 2, 3, 2, 2, 4, 1, 3, 5};

int size = sizeof(nums) / sizeof(nums[0]);

unordered_map<int, int> freq_map;


for (int i = 0; i < size; i++) {

freq_map[nums[i]]++;

int element = 2;

cout << "The frequency of " << element << " is " << freq_map[element] << endl;

return 0;

19) Peak element

#include <iostream>

using namespace std;

int findPeakElement(int nums[], int n) {

for (int i = 1; i < n - 1; ++i) {

if (nums[i] > nums[i - 1] && nums[i] > nums[i + 1]) {

return i;

if (n > 1 && nums[0] > nums[1]) {

return 0;

if (n > 1 && nums[n - 1] > nums[n - 2]) {

return n - 1;

return -1; // In case no peak is found

}
int main() {

int nums[] = {1, 3, 20, 4, 1, 0};

int n = sizeof(nums) / sizeof(nums[0]);

int peakIndex = findPeakElement(nums, n);

if (peakIndex != -1) {

cout << "Peak element found at index " << peakIndex << " with value " << nums[peakIndex] <<
endl;

} else {

cout << "No peak element found." << endl;

return 0;

20) Kth smallest or largest element

#include <iostream>

#include <algorithm>

using namespace std;

void findKthElements(int nums[], int n, int k) {

sort(nums, nums + n);

cout << "The " << k << "th smallest element is " << nums[k - 1] << endl;

cout << "The " << k << "th largest element is " << nums[n - k] << endl;

int main() {

int nums[] = {7, 10, 4, 3, 20, 15};


int n = sizeof(nums) / sizeof(nums[0]);

int k = 3; // Change this value to find different kth elements

findKthElements(nums, n, k);

return 0;

21) sort 0 1 2

#include <iostream>

using namespace std;

void sort012(int arr[], int n) {

int count0 = 0, count1 = 0, count2 = 0;

for (int i = 0; i < n; i++) {

if (arr[i] == 0) count0++;

else if (arr[i] == 1) count1++;

else if (arr[i] == 2) count2++;

for (int i = 0; i < count0; i++) arr[i] = 0;

for (int i = count0; i < (count0 + count1); i++) arr[i] = 1;

for (int i = (count0 + count1); i < n; i++) arr[i] = 2;

int main() {

int arr[] = {0, 1, 2, 0, 1, 2, 0, 1, 2};

int n = sizeof(arr) / sizeof(arr[0]);


sort012(arr, n);

cout << "Sorted array: ";

for (int i = 0; i < n; i++) {

cout << arr[i] << " ";

cout << endl;

return 0;

22) indexes of Sub array sum

#include <iostream>

using namespace std;

pair<int, int> subarraySumPositive(int arr[], int size, int target) {

int start = 0, currSum = 0;

for (int end = 0; end < size; end++) {

currSum += arr[end];

while (currSum > target && start <= end) {

currSum -= arr[start];

start++;

if (currSum == target) {

return {start, end};

}
return {-1, -1};

int main() {

int arr[] = {1, 2, 3, 7, 5};

int size = sizeof(arr) / sizeof(arr[0]);

int target = 12;

pair<int, int> result = subarraySumPositive(arr, size, target);

if (result.first != -1) {

cout << "Subarray found from index " << result.first << " to " << result.second << endl;

} else {

cout << "No subarray found" << endl;

return 0;

23) sub strings in string

#include <iostream>

using namespace std;

void printAllSubstrings(const string& str) {

int n = str.length();

for (int i = 0; i < n; i++) {

string currentSubStr = "";

for (int j = i; j < n; j++) {


currentSubStr += str[j];

cout << currentSubStr << endl;

int main() {

string str = "abc";

printAllSubstrings(str);

return 0;

24) Max length of substr

#include <iostream>

using namespace std;

int maxLengthOfSubstrings(const string& str) {

int maxLength = 0;

int n = str.length();

for (int i = 0; i < n; i++) {

string currentSubStr = "";

for (int j = i; j < n; j++) {

currentSubStr += str[j];

if (currentSubStr.length() > maxLength) {

maxLength = currentSubStr.length();

return maxLength;
}

int main() {

string str = "abc";

int result = maxLengthOfSubstrings(str);

cout << "Maximum length of substring: " << result << endl;

return 0;

25) Transpose of a matrix

#include <iostream>

#include<bits/stdc++.h>

using namespace std;

int main() {

int n;

cin>>n;

int arr[n][n];

for(int i=0;i<n;i++)

for(int j=0;j<n;j++)

cout<<"["<<i<<"]["<<j<<"]-";

cin>>arr[i][j];

cout<<endl;

cout<<"Before Transpose"<<endl;

for(int i=0;i<n;i++)

{
for(int j=0;j<n;j++)

cout<<arr[i][j]<<" ";

cout<<endl;

for(int i=0;i<n;i++)

for(int j=i+1;j<n;j++)

swap(arr[i][j],arr[j][i]);

//cout<<endl;

cout<<"After Transpose "<<endl;

for(int i=0;i<n;i++)

for(int j=0;j<n;j++)

cout<<arr[i][j]<<" ";

cout<<endl;

return 0;

}
26) Factorial of a numb

#include <iostream>

using namespace std;

int main() {

int num;

unsigned long long factorial = 1;

cout << "Enter a positive integer: ";

cin >> num;

if (num < 0) {

cout << "Factorial is not defined for negative numbers." << endl;

} else {

for (int i = 1; i <= num; i++) {

factorial *= i;

cout << "Factorial of " << num << " is: " << factorial << endl;

return 0;

27) reverse array by swapping

#include <iostream>

using namespace std;

int main() {

int size;
cout << "Enter array size: ";

cin >> size;

int arr[size];

cout << "Enter array elements: ";

for (int i = 0; i < size; i++)

cin >> arr[i];

cout << "Original array: ";

for (int i = 0; i < size; i++)

cout << arr[i] << " ";

cout << endl;

int start = 0;

int end = size - 1;

while (start < end) {

int temp = arr[start];

arr[start] = arr[end];

arr[end] = temp;

start++;

end--;

cout << "Reversed array: ";

for (int i = 0; i < size; i++)

cout << arr[i] << " ";

cout << endl;

return 0;
}

28) sub array whose target k

#include <iostream>

using namespace std;

void subarrayWithSum(int arr[], int n, int target) {

for (int i = 0; i < n; i++) {

int current_sum = 0;

for (int j = i; j < n; j++) {

current_sum += arr[j];

if (current_sum == target) {

for (int k = i; k <= j; k++) {

cout << arr[k] << " ";

cout << endl;

return;

cout << "No subarray with the target sum found." << endl;

int main() {

int arr[] = {10, 2, -2, -20, 10};

int target = -10;

int n = sizeof(arr) / sizeof(arr[0]);

subarrayWithSum(arr, n, target);
return 0;

29) segregate 0s and 1s

#include <bits/stdc++.h>

using namespace std;

void segregate0and1(int arr[], int n)

int count = 0;

for (int i = 0; i < n; i++)

if (arr[i] == 0)

count++;

for (int i = 0; i < count; i++)

arr[i] = 0;

for (int i = count; i < n; i++)

arr[i] = 1;

void print(int arr[], int n)

for (int i = 0; i < n; i++)

cout << arr[i] << " ";

int main()

int arr[] = { 0, 1, 0, 1, 1, 1 };

int n = sizeof(arr) / sizeof(arr[0]);

segregate0and1(arr, n);
print(arr, n);

return 0;

30) prime numbers code

#include <iostream>

using namespace std;

bool isPrime(int n) {

if (n <= 1) return false;

for (int i = 2; i < n; ++i) {

if (n % i == 0) {

return false;

return true;

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

if (isPrime(number)) {

cout << number << " is a prime number." << endl;

} else {

cout << number << " is not a prime number." << endl;

}
return 0;

i*i <n

if(n%i!=i)

31) Armstrong number

#include <iostream>

#include <cmath>

using namespace std;

int order(int x) {

int len = 0;

while (x) {

len++;

x = x / 10;

return len;

bool isArmstrong(int num, int len) {

int sum = 0, temp = num;

while (temp != 0) {

int digit = temp % 10;

sum += pow(digit, len);

temp /= 10;

return num == sum;


}

int main() {

int num;

cout << "Enter a number to check if it is an Armstrong number: ";

cin >> num;

int len = order(num);

if (isArmstrong(num, len))

cout << num << " is an Armstrong number." << endl;

else

cout << num << " is not an Armstrong number." << endl;

return 0;

32) gcd code

#include <iostream>

using namespace std;

int gcd(int a, int b) {

while (b != 0) {

int temp = b;

b = a % b;

a = temp;

return a;

int main() {

int num1, num2;


cout << "Enter two numbers: ";

cin >> num1 >> num2;

int result = gcd(num1, num2);

cout << "GCD or HCF of " << num1 << " and " << num2 << " is " << result << endl;

return 0;

33) print divisors

#include <iostream>

using namespace std;

void printDivisors(int n)

for (int i = 1; i <= n; i++)

if (n % i == 0)

cout << i << " ";

int main()

cout << "The divisors of 100 are: \n";

printDivisors(100);

return 0;

34) Reverse a numb

#include <iostream>
using namespace std;

int reverseNumber(int n) {

int reversed = 0;

while (n != 0) {

int digit = n % 10; // Get the last digit

reversed = reversed * 10 + digit; // Append it to the reversed number

n /= 10; // Remove the last digit from n

return reversed;

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

int reversedNumber = reverseNumber(number);

cout << "Reversed number: " << reversedNumber << endl;

return 0;

35) Palindrome number

#include <iostream>

using namespace std;

bool isPalindrome(int n) {

int original = n;
int reversed = 0;

while (n != 0) {

int digit = n % 10; // Get the last digit

reversed = reversed * 10 + digit; // Append it to the reversed number

n /= 10; // Remove the last digit from n

return original == reversed; // Check if original and reversed are the same

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

if (isPalindrome(number)) {

cout << number << " is a palindrome." << endl;

} else {

cout << number << " is not a palindrome." << endl;

return 0;

36) count number of digits

#include <iostream>

using namespace std;

int countDigits(int n) {
int count = 0;

while (n > 0) {

n /= 10;

count++;

return count;

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

int digitCount = countDigits(number);

cout << "Number of digits: " << digitCount << endl;

return 0;

37) Swap 2 variables using temp and without using temp

#include <iostream>

using namespace std;

int main() {

int a, b, temp;

cout << "Enter two numbers: ";

cin >> a >> b;


temp = a;

a = b;

b = temp;

cout << "After swapping: a = " << a << ", b = " << b << endl;

return 0;

#include <iostream>

using namespace std;

int main() {

int a, b;

cout << "Enter two numbers: ";

cin >> a >> b;

a = a + b;

b = a - b;

a = a - b;

cout << "After swapping: a = " << a << ", b = " << b << endl;

return 0;

38) Sum of digits in a number

#include <iostream>

using namespace std;

int sumOfDigits(int n) {
int sum = 0;

n = abs(n);

while (n > 0) {

sum += n % 10;

n /= 10;

return sum;

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

int digitSum = sumOfDigits(number);

cout << "Sum of digits: " << digitSum << endl;

return 0;

39) Sum of n natural numbers

#include <iostream>

using namespace std;

int main() {

int n, sum = 0;

cout << "Enter a positive integer: ";

cin >> n;
for (int i = 1; i <= n; i++) {

sum += i;

cout << "Sum of the first " << n << " natural numbers is: " << sum << endl;

return 0;

40) Prime numbers between 2 numbers

#include <iostream>

using namespace std;

bool isPrime(int n) {

if (n <= 1) return false;

for (int i = 2; i * i <= n; i++) {

if (n % i == 0) return false;

return true;

int main() {

int start, end;

cout << "Enter two numbers (start and end): ";

cin >> start >> end;

cout << "Prime numbers between " << start << " and " << end << " are: ";
for (int num = start; num <= end; num++) {

if (isPrime(num)) {

cout << num << " ";

cout << endl;

return 0;

41) Armstrong number between 2 numbers

#include <iostream>

#include <cmath>

using namespace std;

bool isArmstrong(int n) {

int original = n, sum = 0, digits = 0;

while (original != 0) {

original /= 10;

digits++;

original = n;

while (original != 0) {

int digit = original % 10;

sum += pow(digit, digits);

original /= 10;

}
return sum == n;

int main() {

int start, end;

cout << "Enter two numbers (start and end): ";

cin >> start >> end;

cout << "Armstrong numbers between " << start << " and " << end << " are: ";

for (int num = start; num <= end; num++) {

if (isArmstrong(num)) {

cout << num << " ";

cout << endl;

return 0;

42) Strong number

#include <iostream>

using namespace std;

int factorial(int n) {

int result = 1;

for (int i = 1; i <= n; i++) {

result *= i;
}

return result;

bool isStrongNumber(int num) {

int sum = 0, original = num;

while (num > 0) {

int digit = num % 10;

sum += factorial(digit);

num /= 10;

return sum == original;

int main() {

int number;

cout << "Enter a number: ";

cin >> number;

if (isStrongNumber(number)) {

cout << number << " is a strong number." << endl;

} else {

cout << number << " is not a strong number." << endl;

return 0;

43) Anagrams
#include <iostream>

#include <algorithm>

using namespace std;

bool CheckAnagrams(string str1, string str2)

// Case 1: when both of the strings have different lengths

if (str1.length() != str2.length())

return false;

sort(str1.begin(), str1.end());

sort(str2.begin(), str2.end());

// Case 2: check if every character of str1 and str2 matches with each other

for (int i = 0; i < str1.length(); i++)

if (str1[i] != str2[i])

return false;

return true;

int main()

string Str1 = "INTEGER";

string Str2 = "TEGERNI";

if(CheckAnagrams(Str1, Str2))

cout << "True" << endl;

else

cout<<"False"<<endl;

return 0;

}
44) Palindrome or not

#include <iostream>

using namespace std;

bool is_palindrome(string str){

int left = 0;

int right = str.length()-1;

while(left<right){

if(str[left]!=str[right]){

return false;

left++;

right--;

return true;

int main(){

string str;

cin>>str;

bool result = is_palindrome(str);

if(result){

cout<<"is a palindrome"<<endl;

else{

cout<<"is not a palindrome"<<endl;

return 0;

45) reverse a string


#include<iostream>

#include<string>

using namespace std;

int main()

string str="Journal Dev reverse example";

int i;

cout<<"Printing string in reverse\n";

for(i = str.length() - 1; i >= 0; i--)

cout<<str[i];

return 0;

46) Length of a string

#include <iostream>

#include <string.h>

using namespace std;

int main()

string str = "GeeksforGeeks";

int i = 0;

while (str[i])

i++;

cout << i << endl;


return 0;

47)

// merge 2 sorted arrays

#include <iostream>

using namespace std;

void merge_sorted(int arr1[],int arr2[],int n1,int n2,int arr3[]){

int i=0;int j=0;int k=0;

while(i<n1){

arr3[k++] = arr1[i++];

while(j<n2){

arr3[k++] = arr2[j++];

int main(){

int n1;

cin>>n1;

int arr1[n1];

for(int i=0;i<n1;i++){

cin>>arr1[i];

int n2;

cin>>n2;

int arr2[n2];

for(int i=0;i<n2;i++){

cin>>arr2[i];

}
int arr3[n1+n2];

merge_sorted(arr1,arr2,n1,n2,arr3);

for(int i=0;i<n1+n2;i++){

cout<<arr3[i];

return 0;

48) sort 0s 1s 2s dnf algo

#include <iostream>

using namespace std;

void sortColors(int nums[], int size) {

int low = 0, mid = 0, high = size - 1;

while (mid <= high) {

if (nums[mid] == 0) {

swap(nums[low], nums[mid]);

low++;

mid++;

} else if (nums[mid] == 1) {

mid++;

} else { // nums[mid] == 2

swap(nums[mid], nums[high]);

high--;

}
int main() {

int nums[] = {2, 0, 1, 2, 1, 0, 1, 2};

int size = sizeof(nums) / sizeof(nums[0]);

sortColors(nums, size);

cout << "Sorted array: ";

for (int i = 0; i < size; i++) {

cout << nums[i] << " ";

return 0;

49) // merge 2 sorted arrays optimized

#include <iostream>

using namespace std;

void mergeArrays(int arr1[], int n, int arr2[], int m, int merged[]) {

int i = n - 1; // Pointer for the end of arr1

int j = m - 1; // Pointer for the end of arr2

int k = n + m - 1; // Pointer for the end of merged array

// Merge in reverse order

while (i >= 0 && j >= 0) {

if (arr1[i] > arr2[j]) {

merged[k--] = arr1[i--];

} else {

merged[k--] = arr2[j--];

}
}

// Copy remaining elements from arr1, if any

while (i >= 0) {

merged[k--] = arr1[i--];

// Copy remaining elements from arr2, if any

while (j >= 0) {

merged[k--] = arr2[j--];

int main() {

int arr1[] = {1, 3, 5, 7};

int arr2[] = {2, 4, 6, 8};

int n = sizeof(arr1) / sizeof(arr1[0]);

int m = sizeof(arr2) / sizeof(arr2[0]);

int merged[n + m];

mergeArrays(arr1, n, arr2, m, merged);

cout << "Merged array: ";

for (int i = 0; i < n + m; i++) {

cout << merged[i] << " ";

return 0;

50) missing number in an array


def missing_no(arr,n):

total_sum = (n+1)*(n+2)//2

actual_sum = 0

for i in arr:

actual_sum = actual_sum+i;

missing_no = total_sum-actual_sum

return missing_no

n = int(input("ennter no of elements"))

arr = list(map(int,input().split()))

missing_num = missing_no(arr,n)

print(f"{missing_num}")

51) Add 2 numbs without +

a = int(input("enter the num a"))

b = int(input("enter the num b"))

while(b!=0):

carry = a&b;

a = a^b;

b = carry<<1;

print(a);

You might also like