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 on Trending Technologies
Technical articles with clear explanations and examples
Program to Find Out Currency Arbitrage in Python
Currency arbitrage is a strategy where we exploit differences in exchange rates to make a profit. Given an N x N table of currency exchange rates, we need to check whether there's a sequence of trades that can turn some amount A of any currency into an amount greater than A of the same currency. 1 CAD 0.65 EUR 0.7865 USD 1.00672 CAD ...
Read MoreProgram to Connect a Forest in Python
Given a forest (collection of disconnected trees) represented as an adjacency list, we need to connect all trees into a single tree by adding the minimum number of edges. The goal is to minimize the diameter (longest path between any two nodes) of the resulting connected tree. 0 1 2 3 4 ...
Read MoreProgram to find out the efficient way to study in Python
Suppose we have three lists of equal length representing course assignments: deadlines, credits, and durations. For the i-th assignment, deadlines[i] shows its deadline, credits[i] shows its credit value, and durations[i] shows the days needed to complete it. We must complete one assignment before starting another, and we can finish an assignment on its due date. We start at day 0. The goal is to find the maximum credits we can earn by efficiently scheduling assignments within their deadlines. Example Problem If we have deadlines = [7, 5, 10], credits = [8, 7, 10], and durations = [5, ...
Read MoreProgram to find maximum value by inserting operators in between numbers in Python
When given a list of numbers, we need to find the maximum value possible by inserting binary operators (+, -, *) and parentheses between them. This problem uses dynamic programming to explore all possible combinations of operations. For example, with nums = [-6, -4, -10], we can create the expression ((-6) + (-4)) * -10 = (-10) * (-10) = 100. Algorithm Steps The solution uses a recursive approach with memoization: For each subarray, calculate both minimum and maximum possible values Try all possible split points and operators Combine results from left and right subarrays ...
Read MoreProgram to find max values of sublists of size k in Python
Finding maximum values in sliding windows of size k is a common problem. We'll explore three approaches: brute force, optimized tracking, and using a deque for efficient sliding window maximum. Problem Understanding Given a list nums = [12, 7, 3, 9, 10, 9] and k = 3, we need to find the maximum value in each sublist of size 3: [12, 7, 3] → max = 12 [7, 3, 9] → max = 9 [3, 9, 10] → max = 10 [9, 10, 9] → max = 10 Method 1: Brute Force Approach ...
Read MoreProgram to find length of longest sublist whose sum is 0 in Python
Suppose we have a list with only two values 1 and −1. We have to find the length of the longest sublist whose sum is 0. So, if the input is like nums = [1, 1, −1, 1, 1, −1, 1, −1, 1, −1], then the output will be 8, as the longest sublist is [−1, 1, 1, −1, 1, −1, 1, −1] whose sum is 0. Algorithm To solve this, we will follow these steps − Create an empty hash map to store cumulative sum positions ...
Read MoreProgram to find length of longest substring which contains k distinct characters in Python
Finding the length of the longest substring with at most k distinct characters is a classic sliding window problem. We use two pointers to maintain a valid window and a hash map to track character frequencies. Problem Understanding Given a string s and number k, we need to find the maximum length of any substring that contains at most k distinct characters. For example, if k = 3 and s = "kolkata", the longest substrings with at most 3 distinct characters are "kolk" and "kata", both having length 4. Algorithm Steps We use the sliding ...
Read MoreProgram to find length of the longest path in a DAG without repeated nodes in Python
Finding the longest path in a Directed Acyclic Graph (DAG) without repeated nodes is a classic dynamic programming problem. Since the graph has no cycles, we can use memoization with depth-first search to efficiently compute the longest path from any starting node. Problem Understanding Given a DAG represented as an adjacency list, we need to find the length of the longest simple path (without repeated nodes). The example graph below shows nodes 0-4 with the longest path being 0 → 1 → 3 → 4 → 2 with length 4. ...
Read MoreProgram to find length of longest path with even sum in Python
When working with binary trees, we sometimes need to find the longest path where the sum of all node values is an even number. This problem requires tracking paths with even and odd sums separately using dynamic programming. Problem Understanding Given a binary tree, we need to find the length of the longest path whose sum is even. For example, in a tree with path [5, 2, 4, 8, 5], the sum is 24 (even) and the path length is 5. 2 5 ...
Read MoreProgram to find length of longest common subsequence of three strings in Python
The longest common subsequence (LCS) problem for three strings finds the maximum length of characters that appear in the same relative order across all three strings. This is an extension of the classic two-string LCS problem using dynamic programming. So, if the input is like s1 = "ababchemxde", s2 = "pyakcimde", s3 = "oauctime", then the output will be 4, as the longest common subsequence is "acme". Algorithm Steps To solve this, we will follow these steps − m := size of s1, n := size of s2, o := size of s3 dp := ...
Read More