×
Home Discussions Write at Opengenus IQ
×
  • DSA Cheatsheet
  • HOME
  • Track your progress
  • Deep Learning (FREE)
  • Join our Internship 🎓
  • RANDOM
  • One Liner

Algorithms

Algorithms have proven to be the most important domain over the last century which has reformed the way we do tasks. It is actively used to design industry systems and forms the building blocks of companies like Google. We cover all types of algorithms in depth

Problems on Binary Tree

Serialization and Deserialization of Binary Tree

We have presented the process of Serialization and Deserialization of Binary Tree where we convert a Binary Tree into a compress form which can be saved in a file and retrieved back.

Srishti Guleria Srishti Guleria
Problems on Binary Tree

Convert a Binary Tree to a Skewed Binary Tree

We have presented the algorithm to Change a Binary Tree to a Skewed Binary Tree (both Increasing Skewed Binary Tree and Decreasing Skewed Binary Tree).

Srishti Guleria Srishti Guleria
Problems on Binary Tree

Check if a Binary Tree is skewed or not

We have presented the algorithm to check if a given Binary Tree is skewed or not (can be left or right skewed Binary Tree).

Srishti Guleria Srishti Guleria
Problems on Binary Tree

Introduction to Skewed Binary Tree

A binary tree can be called a skewed binary tree if all nodes have one child or no child at all. There are two types: left and right skewed.

Srishti Guleria Srishti Guleria
Algorithms

Munchausen Number

A number that is equal to the sum of its digits each raised to the power equal to its digit is a Munchausen Number or perfect digit-to-digit invariant(PDDI).

Vikranth R Gaddam Vikranth R Gaddam
Problems on Binary Tree

Find ancestors of a given node in a binary tree (Recursive + Iterative)

Understand how to find ancestors of a given node in a binary tree recursively and iteratively in linear time O(N).

Akshay Atam
Problems on Binary Tree

Find nodes which are at a distance k from root in a Binary Tree

We are given the root of a tree, and an integer k. We need to print all the nodes which are a distance k from the root.

Amruta U. Koshe Amruta U. Koshe
Problems on Binary Tree

Find ancestors of a node in Binary tree (Recursive)

In this problem, we are given a binary tree and a key k. We need to find out all the ancestors of node k. We have used a recursive approach.

Amruta U. Koshe Amruta U. Koshe
Algorithms

Fractional Cascading in Binary search

Fractional Cascading is an optimization over Binary Search to perform Binary Search on K sorted lists to improve the time complexity from O(K logN) to O(logN + K). In this article, fractional cascading in binary search will be covered.

Tanvy Bhola Tanvy Bhola
Algorithms

Knight’s Tour Problem

The Knight's Tour Problem is one of the famous problem in which we have the knight on a chessboard. The knight is supposed to visit every square exactly once. We have explored Backtracking and Warnsdorff's algorithm.

Srishti Guleria Srishti Guleria
Algorithms

Finding nodes at distance K from a given node

We have discussed the approach to find out the nodes at k distance from the given node. There are two approaches: one using Breadth First Traversal and other using Percolate Distance.

Srishti Guleria Srishti Guleria
Algorithms

Move Last Element of Linked List to Front

We will explore recursive and iterative algorithm to Move Last Element of Linked List to Front.

Prnika Bakshi Prnika Bakshi
Software Engineering

Elementary Cellular Automaton and Its Applications in Computer Science

This article explains 1-Dimensional Elementary Cellular Automaton, and its applications, and mathematical explanation of concept behind with code in python.

Varul Srivastava
Dynamic Programming (DP)

Longest Palindromic Subsequence (using Dynamic Programming)

Longest palindrome subsequence problem (LPS) is the problem to find the length of longest subsequence in a string that is a palindrome. This can be done using Dynamic Programming in O(N^2) time.

Tanya Anand Tanya Anand
Algorithms

Move all occurrences of an element to end of linked list

In this problem, given a linked list and an input key value, the task is to move all occurrences of the given key to the end of the linked list.

Harshita Kanal
Problems on Binary Tree

Check if a Binary Tree has duplicate values

Given a Binary Tree, we will develop an algorithm to check if it has duplicate values. This can be done in linear time O(N) where there are N elements in the Binary Tree.

Manasvi Singh
Algorithms

3 Sum problem (Triplets with given Sum)

Given an array, we need to find if there is a triplet in the array whose sum is equal to a given value. If such a triplet is present, we need to print it and return true. Else, return false.

Amruta U. Koshe Amruta U. Koshe
Algorithms

Counting derangements

Given any integer N, we need to find out the number of Derangements for a set of N elements.

Amruta U. Koshe Amruta U. Koshe
Algorithms

Applications of Linked list

We have covered the applications of Linked List, Circular Linked List and Doubly Linked List. We start with the basics of Linked List and then, move to applications of the different types of Linked List.

Tanvy Bhola Tanvy Bhola
Algorithms

What is a Disarium Number?

A disarium number is a number in which the sum of the digits to the power of their respective position is equal to the number itself (position is counted from left to right starting from 1).

Shubham Sood Shubham Sood
Algorithms

Assembly Line Scheduling using Dynamic Programming

The main goal of solving the Assembly Line Scheduling problem is to determine which stations to choose from line 1 and which to choose from line 2 in order to minimize assembly time. We solve this using Dynamic Programming.

Shubham Sood Shubham Sood
Algorithms

Commonly asked interview questions on sorting algorithms. Power booster for your interview preparation!

In this article, we have presented several multiple choice questions (MCQs) on Sorting Algorithms for coding interviews with answers. This will help you get prepared.

Sushma Narayan Hegde
Algorithms

Dice Throw Problem (Dynamic Programming)

There are d dice each having f faces. We need to find the number of ways in which we can get sum s from the faces when the dice are rolled. We have explored a Dynamic Programming solution to Dice Throw problem.

Amruta U. Koshe Amruta U. Koshe
Problems on Binary Tree

Find if a given Binary Tree is a Sub-Tree of another Binary Tree

A sub-tree is a tree itself that is the subset of a bigger binary tree. A subtree of a node means that it is the child of that node. In this article, we will find out different ways to find out if a given binary tree is a sub-tree of another binary tree.

Srishti Guleria Srishti Guleria
Algorithms

Maximum Sum Decreasing Subsequence (Dynamic Programming)

Given an array of n positive integers, find the sum of the maximum sum decreasing subsequence (msds) of the given array such that the integers in the subsequence are sorted in decreasing order.

Aditya Kumar Saroj
OpenGenus IQ © 2025 All rights reserved â„¢
Contact - Email: team@opengenus.org
Primary Address: JR Shinjuku Miraina Tower, Tokyo, Shinjuku 160-0022, JP
Office #2: Commercial Complex D4, Delhi, Delhi 110017, IN
Top Posts LinkedIn Twitter
Android App
Apply for Internship