Programming Articles - Page 1740 of 3363

Rotate List Left by K in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:27:11

366 Views

Suppose we have a list of numbers. We have to define a method that can rotate a list of numbers to the left by k elements.So, if the input is like [5, 4, 7, 8, 5, 6, 8, 7, 9, 2], k = 2, then the output will be [8, 5, 6, 8, 7, 9, 2, 5, 4, 7]To solve this, we will follow these steps −Define an array retn := size of numsk := k mod nfor initialize i := k, when i < n, update (increase i by 1), do −insert nums[i] at the end of retfor initialize ... Read More

Minimum Size of Two Non-Overlapping Intervals in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:24:36

333 Views

Suppose we have a list of intervals where each interval contains the [start, end] times. We have to find the minimum total size of any two non-overlapping intervals, where the size of an interval is (end - start + 1). If we cannot find such two intervals, return 0.So, if the input is like [[2, 5], [9, 10], [4, 6]], then the output will be 5 as we can pick interval [4, 6] of size 3 and [9, 10] of size 2.To solve this, we will follow these steps −ret := infn := size of vsort the array v based ... Read More

Minimum Bracket Addition in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:21:17

338 Views

Suppose we have a string s containing only '(' and ')', we have to find the minimum number of brackets that can be inserted to make the string balanced.So, if the input is like "(()))(", then the output will be 2 as "(()))(", this can be made balanced like "((()))()".To solve this, we will follow these steps −:= 0, cnt := 0for initialize i := 0, when i < size of s, update (increase i by 1), do −if s[i] is same as '(', then −(increase o by 1)Otherwiseif o is non-zero, then −(decrease o by 1)Otherwise(increase cnt by 1)return ... Read More

Linked List Jumps in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:19:02

413 Views

Suppose we have a singly linked list node containing positive numbers. We have to find the same linked list where every node's next points to the node val nodes ahead. If we cannot find such node, next will be null.So, if the input is like [2, 3, 10, 5, 9], then the output will be [2, 3, 15, ]To solve this, we will follow these steps −Define an array vwhile node is not null, do −insert value of node into vnode := next of noderet = new list node with value 0temp = reti := 0while i < size of ... Read More

Inverted Subtree in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:16:09

216 Views

Suppose we have two binary trees called source and target; we have to check whether there is some inversion T of source such that it is a subtree of the target. So, it means there is a node in target that is identically same in values and structure as T including all of its descendants.As we know a tree is said to be an inversion of another tree if either −Both trees are emptyIts left and right children are optionally swapped and its left and right subtrees are inversions.So, if the input is like sourceTargetthen the output will be TrueTo ... Read More

Counting Maximal Value Roots in Binary Tree in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:12:17

190 Views

Suppose we have a binary tree root; we have to count the number of nodes where its value is greater than or equal to the values of all of its descendants.So, if the input is likethen the output will be 4 as all nodes except 3, it meets the criteria.To solve this, we will follow these steps −Define a function dfs(), this will take node, if node is not null, then −return 0l := dfs(left of node)r := dfs(right of node)if val of node >= maximum of l and r, then −(increase ret by 1)x := maximum of val of ... Read More

Compress String in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:09:05

3K+ Views

Suppose we have a string s, we have to eliminate consecutive duplicate characters from the given string and return it. So, if a list contains consecutive repeated characters, they should be replaced with a single copy of the character. The order of the elements will be same as before.So, if the input is like "heeeeelllllllloooooo", then the output will be "helo"To solve this, we will follow these steps −ret := a blank stringfor initialize i := 0, when i < size of s, update (increase i by 1), do −if size of ret is non-zero and last element of ret ... Read More

Cha Cha Slide C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:07:11

227 Views

Suppose we have two strings s and t. we have to check whether s is rotation of t or not, in other words, can we get t after rotating s?So, if the input is like s = "helloworld" and t = "worldhello", then the output will be True.To solve this, we will follow these steps −if size of s0 is not equal to size of s1, then −return falses := s0 concatenate s0return true when s1 is in s, otherwise 0Let us see the following implementation to get better understanding −Example Live Demo#include using namespace std; class Solution {   ... Read More

Minimum String in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:05:42

1K+ Views

Suppose we have two strings s and t of same length, and both are in lowercase letters. Consider we have rearranged s at first into any order, then count the minimum number of changes needed to turn s into t.So, if the input is like s = "eccynue", t = "science", then the output will be 2 as if we rearrange "eccynue" to "yccence", then replace y with s and second c with i, it will be "science".To solve this, we will follow these steps −ret := 0Define two arrays cnt1 to hold frequency of s and cnt2 to hold ... Read More

TV Shows in C++

Arnab Chakraborty
Updated on 02-Sep-2020 12:04:01

548 Views

Suppose we have a list of TV shows, and another list of duration, and an integer k, here shows[i] and duration[i] shows the name and duration watched by the ith person, we have to find the total duration watched of the k most watched shows.So, if the input is like shows: ["Castle Play", "Fairy Tale Series", "Castle Play", "Jerry Mouse", "Rich Boy"], duration: [6, 4, 6, 14, 5] and k = 2, then the output will be 26.To solve this, we will follow these steps −Define one map mn := size of vfor initialize i := 0, when i < ... Read More

Advertisements