Divya Sahni

Divya Sahni

36 Articles Published

Articles by Divya Sahni

Page 2 of 4

Maximize the length of a subarray of equal elements by performing at most K increment operations

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 253 Views

A subarray is a contiguous part of an array i.e. it can be considered as an array inside another array. For example, take the following array, array[] = {1, 2, 3, 4, 5, 6} For the above array, one possible subarray is subarry[] = {2, 3, 4} Problem Statement Given an array arr[] having N positive integers and a positive integer K representing the maximum number that can be added to the elements of the array. The task is to increment the elements of the array by most K increment operations and return the maximum possible ...

Read More

Difference between sums of odd level and even level nodes in an N-ary Tree

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 234 Views

The N-ary tree is a tree data structure where each node can have a maximum of N children where N is a positive integer (N >= 0). N-ary trees are used in many applications like file systems, organisational charts and syntax trees in programming languages. Example of N-ary tree with N = 4. A / / \ \ B C D E / | \ ...

Read More

Detect a negative cycle in a Graph using the Shortest Path Faster Algorithm

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 462 Views

The Shortest Path Faster Algorithm is an improved or more optimized version of the Bellman-Ford Algorithm. It calculates the single source's shortest path in a weighted directed graph. This algorithm is especially suitable for graphs with negatively weighted edges. Algorithm Given a weighted directed graph and a source vertex , the algorithm finds the shortest path from , to each vertex , in the graph. The length of thh shortest path from to is stored in for each vertex . procedure Shortest-Path-Faster-Algorithm(G, s) for each vertex v ≠ s in V(G) ...

Read More

Check if a Binary Tree is an Even-Odd Tree or not

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 298 Views

Even-Odd Tree − A binary tree is called an even-odd tree if all the nodes at the even level (taking root node at level 0) have even values and all the nodes at the odd level have odd values. Problem Statement Given a binary tree. The task is to check if the binary tree is an even-odd tree or not. Sample Example 1 Input 6 / \ 3 7 / \ ...

Read More

Check if a Binary Tree contains node values in strictly increasing and decreasing order at even and odd levels

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 158 Views

Level of a Binary Tree − In a binary tree, the level of the node refers to its distance from the root node. The root node is considered at level 0, its immediate children are at level 1, their children at level 2 and so on. Levels of a binary tree are explained in the following example, A

Read More

Array obtained by repeatedly reversing array after every insertion from the given array

Divya Sahni
Divya Sahni
Updated on 25-Oct-2023 178 Views

Array insertion and reversal are one of the most common array manipulation techniques. Array manipulation aims to modify an array's contents to get a desired outcome. Problem Statement Given an input array A[]. The task is to insert the elements of the given array into an existing array where a reversal of the output array follows each insertion. Sample Example 1 − Input: A[] = {1, 2, 3, 4, 5} Output: R[] = {5, 3, 1, 2, 4} Explanation Initially, the output array R[] is empty. Insertion of 1 : R[] = {1} Insertion of 2 : ...

Read More

Sum of an array using pthreads

Divya Sahni
Divya Sahni
Updated on 28-Sep-2023 1K+ Views

Pthreads is an execution model that helps use multiple processors to work at the same time for solving a problem. It is independent of the programming language. Problem Statement Given an array of integers. Find the sum of all the elements of the array using pthreads. Need for Multithreading for Calculating sum The problem is to add the elements in an array. Although it is a simple problem where a linear traversal of the array can do the work very easily with a time complexity of O(n) where n is the number of elements in the array. But if we ...

Read More

Print numbers in the range 1 to n having bits in an alternate pattern

Divya Sahni
Divya Sahni
Updated on 28-Sep-2023 256 Views

Alternate bit pattern implies the positioning of 0’s and 1’s in a number at an alternate position i.e. no two 0s or 1’s are together. For example, 10 in binary representation is (1010)2 which has an alternate bit pattern as 0’s and 1’s are separated by each other. Problem Statement Given an integer, N. Find all the integers in the range 1 to N where the bit pattern of the integer is alternating. Example 1 Input: 10 Output: 1, 2, 5, 10 Explanation $\mathrm{(1)_{10} = (1)_2, (2)_{10} = (10)_2, (5)_{10} = (101)_2, (10)_{10} = (1010)_2}$ Example 2 Input: ...

Read More

Jacobsthal and Jacobsthal-Lucas Numbers

Divya Sahni
Divya Sahni
Updated on 28-Sep-2023 552 Views

Jacobsthal Numbers Lucas sequence 𝑈𝑛(𝑃, 𝑄) where P = 1 and Q = -2 are called Jacobsthal numbers. The recurrence relation for Jacobsthal numbers is, $$\mathrm{𝐽_𝑛 = 0\: 𝑓𝑜𝑟 \: 𝑛 = 0}$$ $$\mathrm{𝐽_𝑛 = 1\: 𝑓𝑜𝑟 \: 𝑛 = 1}$$ $$\mathrm{𝐽_𝑛 = 𝐽_𝑛−1 + 2𝐽_{𝑛−2}\: 𝑓𝑜𝑟 \: 𝑛 > 1}$$ Following are the Jacobsthal numbers − 0, 1, 1, 3, 5, 11, 21, 43, 85, 171, 341, 683, 1365, …. Jacobsthal-Lucas Numbers Complementary Lucas sequence $\mathrm{𝑉_𝑛(𝑃, 𝑄)}$ where P = 1 and Q = -2 are called JacobsthalLucas numbers. The recurrence relation for Jacobsthal-Lucas numbers is, $\mathrm{𝐽_𝑛}$ = ...

Read More

Increment a number by 1 by manipulating the bits

Divya Sahni
Divya Sahni
Updated on 28-Sep-2023 2K+ Views

Bit manipulation applies logical operations on a bit stream using bitwise operators like AND(&), OR(|), NOT(~), XOR(^), Left Shift() to get a required result. Using bitwise operators is beneficial as we can manipulate individual bits and they are faster than other operators. Problem Statement Given a number. Increment or add the number by 1 using bitwise operators only. (Don’t use arithmetic operators like ‘+’ , ‘-’, ‘*’ or’/’ ) Approach 1: Using One’s Complement / NOT Operator Bitwise complement / One’s complement is implemented using the NOT(~) Operator. For a number n, a bitwise complement of n i.e. ~n = ...

Read More
Showing 11–20 of 36 articles
Advertisements