# online classes

## Operations on a binary tree – Hierarchical Datastructure

Introduction This is the eighth article in the series of non-linear data structures, to read more about the previous article, please check the topic Binary Tree – Print all paths in a tree. To get updates on the coming articles in the series, please use the Subscribe feature on the right panel. Purpose of article This article is mostly about operations on a binary tree, writing code to delete a binary tree, mirror a binary tree, finding the height of a node and finding the depth of a node. We will use the same tree which we have used till now for all these operations. The tree is shown belo...

## Binary Tree – Print all paths in a tree

Introduction This is the seventh article in the series of non-linear data structures, to read more about the previous article, please check the topic Hierarchical Datastructure – Tree Traversals. To get updates on the coming articles in the series, please use the Subscribe feature on the right panel. Purpose of article This article is mostly about using our knowledge of tree to find out ways to solve real world problems and also perform some operations on the tree. We visit the problem to Print all paths in a tree. Common Operations on a Tree Here we assume that we already have a tree bui...

## Dynamic Programming – Distinct Paths between two points

Introduction This is the second post in Dynamic Programming - Online Classes. This is another article which demonstrates the usage of dynamic programming to solve a different problem in hand. To learn the basics of dynamic programming check my first article on dynamic programming. Purpose of the article The purpose of this article is to solve another problem using dynamic programming, this is another very famous interview question which is asked in multiple interviews. So without wasting any time, let us jump into the problem and ways to solve the same. Count the number of distinct path...

## Dynamic Programming – Longest Common Subsequence

[nextpage title="Introduction"] This is the first post in Dynamic Programming - Online Classes. Dynamic programming have been a very interesting topic and technique to solve problems which exhibit a specific set of behaviors. We will try to understand the behaviors and the way it can be implemented to solve complex problem without requiring a mathematical approach. We will try to simplify it to make it clearly understandable and in later articles we will pick up two or three problem statements which can be easily solved using Dynamic Programming. Purpose of the article The purpose of thi...

## Using Abstract Classes And Interfaces

Introduction This article is going to be a short one with some details about the interfaces and abstract classes in java. There have been a lot of confusion about using them interchangeably, but as I always say, encapsulation is a strong feature of java and one of the most important rule in java is that every thing has its own purpose. Hence, if two distinct features (abstract class and interface) exists in the language, then they must have different reasons as well. Purpose of the Article The article describes in detail using Abstract Classes And Interfaces, what is the difference between ...