×
Home Discussions Write at Opengenus IQ
×

Search anything:

  • DSA Cheatsheet
  • HOME
  • Track your progress
  • Deep Learning (FREE)
  • Join our Internship 🎓
  • RANDOM
  • One Liner

OpenGenus IQ, an open-source Computer Science Publication House, is driven by 2500+ BSc/MSc/PhD holders globally, exploring Algorithms, Deep Learning, System Design, and more since 2017.

Algorithms

Implementing Priority Queue using Linked List

We demonstrated the approach to Implement a Priority Queue using Linked List and support all operations like push and pop efficiently.

Vikranth R Gaddam Vikranth R Gaddam
Software Engineering

Bit header file in C++20

Bit header was included in the C++20. This header provides components such as types and functions to access, manipulate and process individual bits and bit sequences.

Rohit Topi
System Design

System design of an URL Shortener (TinyURL or Bit.ly)

We have explained the ideas involved to design a system for URL shortening service which is scalable in the real environment.

Pulkit Sharma
System Design

Design of Rate Limiting System

We have explained how to Design a Rate Limiting System in a scalable way and explored various algorithms that are used in practice.

Sushma Narayan Hegde
Software Engineering

Introduction to Cocoa Pods

Learn about Cocoa Pods and how to use them in your projects to speed up the development time

Sai Balaji
Software Engineering

Email Password Authentication using FireBase in iOS App

Learn how to add email, password authentication to your iOS apps without building any dedicated backend service

Sai Balaji
Software Engineering

TreeSet in Java

TreeSet is created using the implementations of the SortedSet interface in Java and it uses Tree for storage.

Shashank Gautam
Problems on Binary Tree

Level order traversal of a Binary Tree

In this article, we have explored Level order traversal of a Binary Tree in depth using two approaches: recursive approach and queue.

Akshay Atam
Algorithms

Coin Change Problem

Coin change problem is very similar to unbounded knapsack problem which can be solved easily and efficiently by using Dynamic Programming. General task is to find maximum number of ways to add the coins from the array for given amount.

Renuka Ashok Jadhav
Software Engineering

Deleted function in C++

C++11 introduced a new use of the delete keyword to make a function non-callable.

Rohit Topi
Software Engineering

Default functions in C++11

C++11 introduced a new use of the default keyword as a way to explicitly tell the compiler that a special member function will use the default implementation.

Rohit Topi
Algorithms

Maximal Rectangle problem (using Monotonic queue)

We have solved the maximal rectangle problem using Monotonic queue. In this problem we are given a matrix consisting of only 0's and 1's, we need to find the largest rectangle consisting of only 1's and return its area.

Raghavendra Achar C
Algorithms

Monotonic Queue (with Daily Temperatures & Largest Rectangle in Histogram)

Monotonic queue is a data structure where the data is entirely in non-decreasing order or entirely in non-increasing order. It is generally used for optimizing dynamic programming techniques.

Raghavendra Achar C
Algorithms

Reverse a Stack

The objective of this article is to explore various approaches that can be used to reverse the given stack (stack is a linear data structure where insertion and deletion are made at the same end).

Raghavendra Achar C
Machine Learning (ML)

Stacking in Machine Learning

Stacking (a.k.a Stack Generalization) is an ensemble technique that uses meta-learning for generating predictions. We have explained stacking in Machine Learning (ML) in depth.

MAYANK PATEL
Software Engineering

Control Flow statements in Ruby

Control flow statements are used for the controlled logical and conditional execution of a statement. We have explored Control Flow statements in Ruby in depth.

Ashvith Shetty
Algorithms

Zig Zag Traversal of Binary Tree

In this article, we present 4 different approaches for Zig Zag Traversal of Binary Tree using stack, deque, recursion and an iterative approach.

Srishti Guleria Srishti Guleria
Algorithms

Check if 2 Binary Trees are isomorphic

Two Binary Trees are known as isomorphic if one of them can be obtained from the other one by series of flipping of nodes, swapping the children both left and right of number of nodes.

Srishti Guleria Srishti Guleria
Algorithms

Convert Binary Tree to Circular Doubly Linked list

To convert binary tree to circular doubly linked list, we will take left node as previous pointer and right node as next pointer. The order of nodes in Doubly Linked List must be same as in inorder of the given binary tree.

Srishti Guleria Srishti Guleria
Algorithms

Succinct (0-1) Encoding of Binary Tree

Succinct (0-1) Encoding of Binary Tree is an approach to encode a Binary Tree to the lowest possible space and maintain the structural information.

Srishti Guleria Srishti Guleria
Algorithms

LCA in Binary Tree using Euler tour and Range Minimum Query

In this problem, we will find the Lowest Common Ancestor of a Binary Tree using Euler tour and Range Minimum Query. We can solve the LCA problem by reducing it to a RMQ problem.

Srishti Guleria Srishti Guleria
Algorithms

Lowest Common Ancestor in a Binary Tree

In binary trees, for given two nodes a and b, the lowest common ancestor is the node of which both a and b are descendants. We explored the algorithm to find Lowest Common Ancestor in a Binary Tree.

Srishti Guleria Srishti Guleria
Problems on Binary Tree

Operations in Threaded Binary Tree

There are three main operations which can be done on a threaded binary tree Insert, Search and Delete operation which we have explained in depth.

Hrithik Shrivastava Hrithik Shrivastava
Problems on Binary Tree

Threaded Binary Tree

Threaded binary tree is a simple binary tree but they have a speciality that null pointers of leaf node of the binary tree is set to inorder predecessor or inorder successor.

Hrithik Shrivastava Hrithik Shrivastava
Algorithms

Boolean Parenthesization Problem

We will solve Boolean Parenthesization Problem using Dynamic Programming and understand the algorithm with a step by step explanation. The time complexity to solve this problem is O(N^3) with a space complexity of O(N^2).

Ayush Mahant Ayush Mahant
OpenGenus IQ © 2026 All rights reserved â„¢ [email: team@opengenus.org]
Top Posts LinkedIn Twitter