Articles on Trending Technologies

Technical articles with clear explanations and examples

Program to reverse linked list by groups of size k in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 457 Views

Suppose we have a singly linked list, and another value k, we have to reverse every k contiguous group of nodes.So, if the input is like List = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], k = 3, then the output will be [3, 2, 1, 6, 5, 4, 9, 8, 7, 10, ]To solve this, we will follow these steps −tmp := a new node with value 0next of tmp := nodeprev := null, curr := nulllp := temp, lc := currcnt := kwhile curr is not null, doprev := nullwhile cnt > 0 and curr ...

Read More

Program to reverse the directed graph in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 1K+ Views

Suppose we have a directed graph, we have to find its reverse so if an edge goes from u to v, it now goes from v to u. Here input will be an adjacency list, and if there are n nodes, the nodes will be (0, 1, ..., n-1).So, if the input is likethen the output will beTo solve this, we will follow these steps −ans := a list of n different lists, where n is number of verticesfor each index i, and adjacent list l in graph, dofor each x in l, doinsert i at the end of ans[x]return ...

Read More

Program to reverse a linked list in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 593 Views

Suppose we have a linked list, we have to reverse it. So if the list is like 2 -> 4 -> 6 -> 8, then the new reversed list will be 8 -> 6 -> 4 -> 2.To solve this, we will follow this approach −Define one procedure to perform list reversal in recursive way as solve(head, back)if head is not present, then return headtemp := head.nexthead.next := backback := headif temp is empty, then return headhead := tempreturn solve(head, back)Let us see the following implementation to get better understanding −Exampleclass ListNode:    def __init__(self, data, next = None):   ...

Read More

Program to remove sublist to get same number of elements below and above k in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 205 Views

Suppose we have a list of numbers called nums and another number k, we can remove any sublist at most once from the list. We have to find the length of the longest resulting list such that the amount of numbers strictly less than k and strictly larger than k is the same.So, if the input is like nums = [6, 10, 8, 9, 3, 5], k = 6, then the output will be 5, as if we remove the sublist [9] then we will get [6, 10, 8, 3, 5] and there are two numbers [3, 5] which are ...

Read More

Program to remove duplicate entries in a linked list in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 263 Views

Suppose we have a linked list of numbers, we have to remove those numbers which appear multiple times in the linked list (hold only one occurrence in the output), we also have to maintain the order of the appearance in the original linked list.So, if the input is like [2 -> 4 -> 6 -> 1 -> 4 -> 6 -> 9], then the output will be [2 -> 4 -> 6 -> 1 -> 9].To solve this, we will follow these steps −if node is not null, thenl := a new settemp := nodeinsert value of temp into lwhile ...

Read More

Program to update elements in a given range in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 379 Views

Suppose we have a list of numbers called nums and a list of operations. Here each operation has three fields [L, R, X], this indicated that we should increment by X all the elements from indices L to R (inclusive). We have to apply all operations and return the final list.So, if the input is like nums = [8, 4, 2, -9, 4] operations = [ [0, 0, 3], [1, 3, 2], [2, 3, 5] ], then the output will be [11, 6, 9, -2, 4], as the initial list was [8, 4, 2, -9, 4].Performing first operation [0, 0, ...

Read More

Program to find how many total amount of rain we can catch in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 174 Views

Suppose we have an array of n non-negative integers. These are representing a height where the width of each bar is 1, we have to compute how much water it is able to catch after raining. So the map will be like −Here we can see there are 8 blue boxes, so the output will be 8.To solve this, we will follow these steps −Define a stack st, water := 0 and i := 0while i < size of heightif is stack is empty or height[stack top] >= height[i], then push i into stack, increase i by 1otherwisex := stack ...

Read More

Program to evaluate Postfix Notation in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 14K+ Views

Suppose we have postfix expression and we have to evaluate the value. Postfix expression is also known as Reverse polish notation. Here we have to use the stack data structure to solve the postfix expressions.So if the expression is “21+3*”, then the answer will be 9.Let us see the steps −for each character ch in the postfix expression, doif ch is an operator $\odot$ , thena := pop first element from stack, b := pop second element from the stackres := b $\odot$ apush res into the stackelse if ch is an operand, thenadd ch into the stackreturn element of ...

Read More

Program to count number of ways we can distribute coins to workers in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 382 Views

Suppose we have two lists of positive numbers called coins and salaries. Here coins[i] indicates the value for coin i and salaries[j] indicates the least amount of salary required to pay for worker j. Now suppose we have one coin per type and we must give each worker exactly one coin, we have to compute the number of ways to give coins to each worker. Here two ways are different if some worker receives one type of coin in one way but a different type of coin in the other way. If the result is very large return result mod ...

Read More

Program to count how many ways we can divide the tree into two trees in Python

Arnab Chakraborty
Arnab Chakraborty
Updated on 20-Oct-2020 237 Views

Suppose we have a binary tree containing values 0, 1 and 2. The root has at least one 0 node and one 1 node. Now suppose there is an operation where we delete an edge in the tree and the tree becomes two different trees. We have to find the number of ways we can delete one edge such that none of the two trees contain both a 0 node and a 1 node.So, if the input is likethen the output will be 1 as we can only delete the 0 to 2 edge.To solve this, we will follow these ...

Read More
Showing 37181–37190 of 61,248 articles
Advertisements