OnlineClasses

The category contains all the lectures as posts which teaches about Datastructures & Algorithms and Problem Solving

Level Order Tree Traversal

Introduction This is the third article in the Tree Traversals - Online Classes. I have written many articles about non-linear data structures and their traversals. But the more you dive in you can find many more ways to traverse a tree. Here we try to solve the level order tree traversal for a binary tree and we will also try to figure out other variations of this traversal. This can we precisely extended for a n-ary tree as well. Defining the problem Let us consider the above tree, if we follow the blue line from root till end and print all the nodes, we will end up printing the lev...
Read More

Understanding Search Trees – Red Black Trees

Introduction This article is to highlight the importance of having a Search tree with minimum height and revisit couple of data structures which can guarantee a minimum height Tree. Understanding Search Trees - Red Black Trees An evolution of BST that aim to keep the tree balanced without affecting the complexity of the primitive operations. This is done by colouring each node in the tree with either red or black and preserving a set of properties that guarantees that the deepest path in the tree is not longer than twice the shortest one. A red black tree is a binary search tree with the...
Read More

Data Structures and Algorithms – Recursion

Introduction The article Data Structures and Algorithms – Recursion is the third in series, of online course for Data Structure Algorithm. This is an effort to introduce and explain the Recursion methodology of algorithm design and programming. We will try to write some recursion based code and analyze the complexity of the algorithms in detail. Recursion It is the concept of defining a method that makes a call to itself and the call is termed as a recursive call. This is a readable and still efficient way of designing algorithms in the scenario where the problem in hand can be redefined by...
Read More

Asymptotic Analysis

[nextpage title="Introduction"] This article Data Structures and Algorithms – Asymptotic Analysis presents a better approach to understand how to analyze algorithms. Moreover, we would like to understand what algorithms are and why they are important. In this article we will just try and understand the idea behind analyzing algorithms. On the other hand if you are interested in watching a video for this article, you can subscribe our Youtube Channel. Question: What are algorithms and their analysis? Answer: It’s a theoretical study of computer program’s performance and resource usa...
Read More

Data Structures and Algorithms – Introduction

Introduction This series of articles is from the online sessions I conduct for working professionals as a part of the data structures and algorithm subject. I will keep posting each session's article here so that it can be used by everyone who is not able to attend the sessions. On the other hand if you are interested in watching a video for this article, you can subscribe our Youtube Channel. What are data structures? Data is the basis of information, in today’s e-age information is the most important asset. An important and un-deniable fact about data is that its volume is exponent...
Read More

Count Binary Search Trees created from N unique elements

[nextpage title="Introduction"] This is the third article for Binary Search Trees, to read more about the previous article, please check the topic Binary Search Tree Basics – a detailed discussion. To get updates on the coming articles in the series, please use the Subscribe feature on the right panel. Purpose of article This article explains few more aspects of binary search tree (BST). In the last article we learnt to construct a BST and then we revisited our technique to construct a better BST with the same. So this means that there can be more than one BST possible with a given set of e...
Read More

Building Binary Search Trees – detailed discussion

Introduction This is the second article for Binary Search Trees, to read more about the previous article, please check the topic Binary Search Tree Basics – a detailed discussion. To get updates on the coming articles in the series, please use the Subscribe feature on the right panel. Purpose of article This article will resume from where we concluded in the first article, this is primarily to understand how to build a BST and understand the problems which arise after building Binary Search Trees. Then we will improve over it and find out ways to build better BSTs. Do remember there is a...
Read More