Suppose we have following flow network. As we know an s-t cut is a cut that requires the source s node and a sink t node to be in different subsets, and it includes edges going from the source set to the sink side. Here the capacity of an s-t cut is represented by the sum of each edge capacity in the cut-set. Here we have to find minimum capacity s-t cut of the given network. Here the expected output is all edges of the minimum cut.So, if the input is likethen the output will be [(1, 3), (4, 3), ... Read More
Suppose we have a singly linked list and a value x; we have to find a pair whose sum is same as x. We have to keep in mind that we cannot use any extra space and expected time complexity will be O(n).So, if the input is like 4→7→8→9→10→11→12, x = 19, then the output will be [(7, 12), (8, 11), (9, 10)]To solve this, we will follow these steps −Define a function convert_to_xor(), this will take start, prev := NULLwhile start is NULL, do −next_list_node := next of startnext of start := XOR of the address of next_list_node and ... Read More
Suppose we have a binary matrix; we have to find the pair of rows in the given matrix that has maximum bit difference.So, if the input is like matrix, then the output will be [2, 3] as bit difference between rows 2 and row 3 is 4, this is maximum.To solve this, we will follow these steps −Define Trie structure, with value and two children.Define a function get_max_bit_diff(), this will take root of a trie, matrix, n, row_index, temp := root, count := 0for initialize i := 0, when i < n, update (increase i by 1), do−if child[ matrix[row_index, ... Read More
Suppose we have a number N, we have to find all factors of N and return the product of four factors of N such that: The sum of the four factors is same as N. The product of the four factors is maximum. All four factors can be equal to each other to maximize the product.So, if the input is like N = 60, then the output will be All the factors are -> 1 2 3 4 5 6 10 12 15 20 30 60 and product is 50625, as we 15 has been selected four times to make ... Read More
Suppose we have a sorted doubly linked list of unique positive numbers; we have to find pairs in the doubly linked list whose product is same as a given value x. We have to keep in mind that, this will be solved without consuming any extra space.So, if the input is like L = 1 ⇔ 2 ⇔ 4 ⇔ 5 ⇔ 6 ⇔ 8 ⇔ 9 and x = 8, then the output will be (1, 8), (2, 4)To solve this, we will follow these steps −curr := head, nxt := headwhile nxt.next is not None is non-zero, donxt ... Read More
Suppose we have an array A where GCD of every possible pair of elements of another array is given, we have to find the original numbers which are used to compute the given GCD array.So, if the input is like A = [6, 1, 1, 13], then the output will be [13, 6] as gcd(13, 13) is 13, gcd(13, 6) is 1, gcd(6, 13) is 1, gcd(6, 6) is 6To solve this, we will follow these steps −n := size of Asort array A in descending orderoccurrence := an array of size A[0] and fill with 0for i in range ... Read More
Suppose we have a sequence of numbers called bn, this is represented using a recurrence relation like b1=1 and bn+1/bn=2n . We have to find the value of log2(bn) for a given n.So, if the input is like 6, then the output will be 5 as log2(bn) = (n * (n - 1)) / 2 = (6*(6-1))/2 = 15We can solve this problem by solving this relation as follows −bn+1/bn = 2nbn/bn-1 = 2n-1…b2/b1 = 21 , If we multiply all of above, we can get(bn+1/bn).(bn/bn-1)……(b2/b1) = 2n + (n-1)+……….+1So, bn+1/b1 = 2n(n+1)/2As 1 + 2 + 3 + ………. ... Read More
Suppose we have a string whose length is m, and this string is containing only lowercase letters, we have to find the n-th permutation of string lexicographically.So, if the input is like string = "pqr", n = 3, then the output will be "qpr" as all permutations are [pqr, prq, qpr, qrp, rpq, rqp], they are in sorted order.To solve this, we will follow these steps −MAX_CHAR := 26MAX_FACT := 20factorials := an array of size MAX_FACTfactorials[0] := 1for i in range 1 to MAX_FACT, dofactorials[i] := factorials[i - 1] * isize := size of stringoccurrence := an array of ... Read More
Suppose we have two integers N and K; we have to find N unique values whose bit-wise OR is same as K. If there is no such result, then return -1So, if the input is like N = 4 and K = 6, then the output will be [6, 0, 1, 2].To solve this, we will follow these steps −MAX := 32visited := a list of size MAX and fill with Falseres := a new listDefine a function add() . This will take numpoint := 0value := 0for i in range 0 to MAX, doif visited[i] is non-zero, thengo for ... Read More
Suppose we have an array A of n unique numbers, these n elements are present in the array in ascending order, but there is one missing element. We have to find the missing element.So, if the input is like A = [1, 2, 3, 4, 5, 6, 7, 9], then the output will be 8.To solve this, we will follow these steps −n := size of Aleft := 0right := n - 1mid := 0while right > left , domid := left +(right - left) / 2if A[mid] - mid is same as A[0], thenif A[mid + 1] - A[mid] ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP