Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Articles by Arnab Chakraborty
Page 288 of 377
Find distance between two nodes of a Binary Tree in C++
Consider we have a binary tree with few nodes. We have to find the distance between two nodes u and v. suppose the tree is like below −Now the distance between (4, 6) = 4, path length is 4, length between (5, 8) = 5 etc.To solve this problem, we will find the LCA (Lowest Common Ancestor), then calculate distance from LCA to two nodes.Example#include using namespace std; class Node { public: int data; Node *left, *right; }; Node* getNode(int data) { Node* node = new Node; node->data = data; node->left = ...
Read MoreFind the frequency of a digit in a number using C++.
Here we will see how to get the frequency of a digit in a number. Suppose a number is like 12452321, the digit D = 2, then the frequency is 3.To solve this problem, we take the last digit from the number, then check whether this is equal to d or not, if so then increase the counter, then reduce the number by dividing the number by 10. This process will be continued until the number is exhausted.Example#include using namespace std; int countDigitInNum(long long number, int d) { int count = 0; while(number){ if((number % ...
Read MoreFind the number of ways to divide number into four parts such that a = c and b = d in C++
Suppose we have a number n. We have to find number of ways to divide a number into parts (a, b, c and d) such that a = c, and b = d. So if the number is 20, then output will be 4. As [1, 1, 9, 9], [2, 2, 8, 8], [3, 3, 7, 7] and [4, 4, 6, 6]So if N is odd, then answer will be 0. If the number is divisible by 4, then answer will be n/4 – 1 otherwise n/4.Example#include using namespace std; int countPossiblity(int num) { if (num % 2 == 1) return 0; else if (num % 4 == 0) return num / 4 - 1; else return num / 4; } int main() { int n = 20; cout
Read MoreFind distance from root to given node in a binary tree in C++
Consider we have a binary tree with few nodes. We have to find the distance between the root and another node u. suppose the tree is like below:Now the distance between (root, 6) = 2, path length is 2, distance between (root, 8) = 3 etc.To solve this problem, we will use a recursive approach to search the node at the left and right subtrees, and also update the lengths for each level.Example#include using namespace std; class Node { public: int data; Node *left, *right; }; Node* getNode(int data) { Node* node = new ...
Read MoreFind the Product of first N Prime Numbers in C++
Suppose we have a number n. We have to find the product of prime numbers between 1 to n. So if n = 7, then output will be 210, as 2 * 3 * 5 * 7 = 210.We will use the Sieve of Eratosthenes method to find all primes. Then calculate the product of them.Example#include using namespace std; long PrimeProds(int n) { bool prime[n + 1]; for(int i = 0; i
Read MoreFind the value of ln(N!) using Recursion using C++.
Suppose we have a number N, our task is to find ln(N!) using recursion. ln() is basically log base e. To solve this we can use this formula −$$\ln\lgroup N!\rgroup=\ln\lgroup N*\lgroup N-1\rgroup *\lgroup N-2\rgroup *\dotsm*2*1\rgroup=\ln\lgroup N\rgroup+\ln\lgroup N+1\rgroup+\dotsm+\ln\lgroup 1\rgroup$$Example#include #include using namespace std; double factLog(int n) { if (n
Read MoreFind the sum of digits of a number at even and odd places in C++
Suppose, we have an integer N, We have to find the sum of the odd place digits and the even place digits. So if the number is like 153654, then odd_sum = 9, and even_sum = 15.To solve this, we can extract all digits from last digit, if the original number has odd number of digits, then the last digit must be odd positioned, else it will be even positioned. After process a digit, we can invert the state from odd to even and vice versa.Example#include using namespace std; bool isOdd(int x){ if(x % 2 == 0) return ...
Read MoreFind element in a sorted array whose frequency is greater than or equal to n/2 in C++.
Consider we have an array with size n. This array is sorted. There is one element whose frequency is greater than or equal to n/2, where n is the number of elements in the array. So if the array is like [3, 4, 5, 5, 5], then the output will be 5.If we closely observe these type of array, we can easily notice that the number whose frequency is greater than or equal to n/2, will be present at index n/2 also. So the element can be found at position n/2ExampleSource Code: #include using namespace std; int higherFreq(int arr[], int ...
Read MoreFind four elements a, b, c and d in an array such that a+b = c+d in C++
Suppose we have a list of integers. Our task is to find four distinct integers as two pairs like (a, b) and (c, d), such that a+b = c+d. If there are multiple answers, then print only one. Suppose the array elements are like: A = [7, 5, 9, 3, 6, 4, 2], then pairs can be (7, 3) and (6, 4)Here we will use the hashing technique. We use the sum as key as pair as the value in the hash table. We have to follow these steps to solve this problem.For i in range 0 to n – ...
Read MoreFind frequency of each element in a limited range array in less than O(n) time in C++
Suppose we have an array of integers. The array is A, and the size is n. Our task is to find the frequency of all elements in the array less than O(n) time. The size of the elements must be less than one value say M. Here we will use the binary search approach. Here we will recursively divide the array into two parts if the end elements are different, if both its end elements are the same, it means all elements in the array are the same as the array is already sorted.Example#include #include using namespace std; void calculateFreq(int ...
Read More