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
Articles by Arnab Chakraborty
Page 153 of 377
Program to find maximum sum by flipping each row elements in Python
Suppose we have a 2D binary matrix. For any row or column in the given matrix we can flip all the bits. If we can perform any number of these operations, and that we treat each row as a binary number, we have to find the largest sum that can be made of these numbers.So, if the input is like010001then the output will be 11, as if we flip both rows we get 101 and 110, then the sum is 5 + 6 = 11To solve this, we will follow these steps −for each row r in matrix, doif r[0] ...
Read MoreAndroid Unlock Patterns in C++
Suppose we have an Android 3x3 key lock screen and two integers m and n, the values of m and n are in range 1 ≤ m ≤ n ≤ 9, We have to count the total number of unlock patterns of the Android lock screen, which consist of minimum of m keys and maximum n keys.The rule is like, each pattern must connect at least m keys and at most n keys. All the keys must be unique. If there is a line connecting two consecutive keys in the pattern passes through any other keys, the other keys must ...
Read MoreLargest BST Subtree in C++
Suppose we have a binary tree; we have to find the largest subtree of it where largest means subtree with largest number of nodes in it.So, if the input is like, then the output will be 3, as the Largest BST Subtree, in this case, is the highlighted one.To solve this, we will follow these steps −Define one structure called data, there will be four values, size, maxVal, minVal, and ok, the ok can hold only true/false valuessolve(TreeNode * node)if node is null, then &miuns;return Data by initializing (0, infinity, -infinity, true)left := solve(left of node)left := solve(right of node)Define ...
Read MoreMaximum Size Subarray Sum Equals k in C++
Suppose we have an array called nums and a target value k, we have to find the maximum length of a subarray that sums to k. If there is not present any, return 0 instead.So, if the input is like nums = [1, -1, 5, -2, 3], k = 3, then the output will be 4, as the subarray [1, - 1, 5, -2] sums to 3 and is the longest.To solve this, we will follow these steps −ret := 0Define one map mn := size of numstemp := 0, m[0] := -1for initialize i := 0, when i < ...
Read MoreNumber of Connected Components in an Undirected Graph in C++
Suppose we have n nodes and they are labeled from 0 to n - 1 and a list of undirected edges, are also given, we have to define one function to find the number of connected components in an undirected graph.So, if the input is like n = 5 and edges = [[0, 1], [1, 2], [3, 4]], then the output will be 2To solve this, we will follow these steps −Define a function dfs(), this will take node, graph, an array called visited, if visited[node] is false, then −visited[node] := truefor initialize i := 0, when i < size ...
Read MoreGeneralized Abbreviation in C++
Suppose there is a word. We have to define a function that can generate the generalized abbreviations of a word.So, if the input is like "word", then the output will be ["word", "1ord", "w1rd", "wo1d", "wor1", "2rd", "w2d", "wo2", "1o1d", "1or1", "w1r1", "1o2", "2r1", "3d", "w3", "4"]To solve this, we will follow these steps −Define an array retDefine a function solve(), this will take s, idx, if idx >= size of s, then −insert s at the end of retreturny := substring of s from index 0 to idx - 1i := size of ynum := blank stringwhile (i >= ...
Read MoreBinary Tree Vertical Order Traversal in C++
Suppose there is a binary tree, we have to find the vertical order traversal of its nodes' values. If two nodes are in the same row and column, the order should be from left to right.So, if the input is like, then the output will be [[9], [3, 15], [20], [7]]To solve this, we will follow these steps −Define one map mDefine a function solve(), this will take node, x initialize it with 0, if node is null, then −returnsolve(left of node, x - 1)solve(right of node, x + 1)insert value of node at the end of m[x]From the main ...
Read MoreSparse Matrix Multiplication in C++
Suppose we have two matrices A and B, we have to find the result of AB. We may assume that A's column number is equal to B's row number.So, if the input is like [[1, 0, 0], [-1, 0, 3]] [[7, 0, 0], [0, 0, 0], [0, 0, 1]], 100-103700000001then the output will be [[7, 0, 0], [-7, 0, 3]]700-703To solve this, we will follow these steps −r1 := size of A, r2 := size of Bc1 := size of A[0], c2 := size of B[0]Define one 2D array ret of order r1 x c2Define an array sparseA[r1] of pairsfor ...
Read MoreBinary Tree Longest Consecutive Sequence in C++
Suppose we have a binary tree; we have to check whether we can find the length of the longest consecutive sequence path. If the path refers to any sequence of nodes from some starting node to any node in the tree along the parent-child connections. The longest consecutive path need to follow parent to child but not reverse.So, if the input is like, then the output will be 3, as the Longest consecutive sequence path is 3-4-5, so return 3.To solve this, we will follow these steps −Define a function solveUtil(), this will take node, prev, len initialize it with ...
Read MoreFlip Game II in C++
Suppose there are two players who are playing the flip game. Here we have a string that contains only these two characters: + and -, player1 and player2 take turns to flip two consecutive "++" into "--". The game ends when one player can no longer make a move and therefore the other one will be the winner. We have to define a function to check whether the starting player can guarantee a win.So, if the input is like s = "++++", then the output will be true, as the starting player can guarantee a win by flipping the middle ...
Read More