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 315 of 377
Find duplicate rows in a binary matrix in C++
Suppose we a binary matrix. Here we will see how to find the duplicate rows in that matrix. Suppose the matrix is like −110101001001101100110101001001001001There are duplicate rows at position 3, 4, 5.To solve this, we will use the Trie. The Trie is an efficient data structure used for strong and retrieval of data where character set is small. The search complexity is optimal as the key length. So at first we will insert the binary trie. If the newly added row is already present, then that is duplicate.Example Live Demo#include using namespace std; const int MAX = 100; class Trie { ...
Read MoreFind alphabet in a Matrix which has maximum number of stars around it in C++
Suppose we have a matrix M. This is filled with stars and letters. We have to find which letter has maximum number of stars around it. So if the matrix is like below −Here A and C has 7 stars around it. this is maximum. As A is lexicographically smaller, so it will be the output.The approach is simple, we will count the characters, then when one character has found, then count the stars around it. Also store the value inside a map. From the map where the size is maximum that will be printed.Example Live Demo#include #include #define MAX ...
Read MoreFind a triplet such that sum of two equals to third element in C++
Suppose there is an array of n numbers. We have to find three numbers, such that sum of two elements is same as the third one. So if the array is like [5, 32, 1, 7, 10, 50, 19, 21, 2], the output will be 21, 2, 19. If no such element has found, display that message.To solve this, we will follow some steps as follows −Sort the given arrayThen start fixing the greatest element from the last element and traverse the array to find other two numbers which sum up to the third element.Take two pointers j and k, ...
Read MoreFind a specific pair in Matrix in C++
Suppose there is an n x n matrix mat of integers. we have to find maximum value of mat(c, d) - mat(a, b) over all choices of indexes. Here we have to keep in mind that c > a and d > b. So if the matrix is like −12-1-4-20-8-342138613-4-117-60-410-51The output will be 18. This is because mat[4, 2] - mat[1, 0] = 18 has maximum difference.To solve this we will preprocess the matrix such that index(i, j) stores max of elements in matrix from (i, j) to (n - 1, n - 1) and in the process keeps on ...
Read MoreFind a palindromic string B such that given String A is a subsequence of B in C++
Suppose we have a string A, we have to find another string B, that will be palindrome. And the given string A will be subsequence of B. The subsequence of a string is a string that can be formed by it by deleting some characters without changing the order of remaining characters. Suppose the string is “cotst”, then generated string will be “contest”. For the input of this program we have chosen A = “ab”, the generated string will be “abba”, this is palindrome.To solve this, we will follow this approach. This is very simple, we will reverse the A, ...
Read MoreMulti-Way Trees
A multiway tree is defined as a tree that can have more than two children. If a multiway tree can have maximum m children, then this tree is called as multiway tree of order m (or an m-way tree).As with the other trees that have been studied, the nodes in an m-way tree will be made up of m-1 key fields and pointers to children.multiway tree of order 5To make the processing of m-way trees easier some type of constraint or order will be imposed on the keys within each node, resulting in a multiway search tree of order m ...
Read MoreRebalancing Algorithms
The rebalancing Algorithms can be performed in following way −Day-Stout-Warren AlgorithmWe can implement actually rebalance method using the Day-Stout-Warren Algorithm.It's linear in the number of nodes.The following is a presentation of the basic DSW Algorithm in pseudo code.A node is allocated called as the "pseudo-root" and make the tree's actual root as the right child of the pseudo-root.Call tree-to-vine function for converting tree to sorted linked list with the pseudo-root as its argument.Call vine-to-tree function for converting sorted linked list to tree again with the pseudo-root and the size (number of elements) of the tree as its argument.The tree's actual ...
Read MoreBlocked Bloom Filter
We select a memory block first.Then we select local Bloom Filter within each block.It might cause imbalance between memory blocksThis filter is efficient, but poor false positive rate(FPR).At first instance, blocked Bloom filters should have the same FPR (False Positive Rate) as standard Bloom filters of the same size.Blocked Bloom Filter consists of a sequence of block b comparatively less than standard Bloom filters (Bloom filter blocks), each of which fits into one cache-line.Blocked Bloom filter scheme is differentiated from the partition schemes, where each bit is inserted into a different block.Blocked Bloom Filter is implemented in following ways −Bit ...
Read MoreCounter Size and Counter Overflow
Counter SizeWe must select counters large enough for avoiding overflow.Size is 4 bits/counter suggested by Poisson approximation.Average load implementing k = (ln 2)m/n counters is ln 2.Probability a counter has load minimum 16:≈e-ln2(ln 2)16/16!≈6.78E-17We consider 4 bits/counter for comparisons.Counter OverflowWhen a counter does overflow, it may be arrived at its maximum value.This situation can later cause a false negative only if eventually the counter goes down to 0 when it should have remained at nonzero.The expected time to this situation is very large but is something we need to keep in mind for any application that does not permit false ...
Read MoreCounting Bloom Filter
Basic ConceptA Counting Bloom filter is defined as a generalized data structure of Bloom filter that is implemented to test whether a count number of a given element is less than a given threshold when a sequence of elements is given. As a generalized form, of Bloom filter there is possibility of false positive matches, but no chance of false negatives – in other words, a query returns either "possibly higher or equal than the threshold" or "definitely less than the threshold".Algorithm descriptionMost of the parameters, used under counting bloom filter, are defined same with Bloom filter, such as n, ...
Read More