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.
Problems on Binary Tree Convert Binary Tree to Threaded Binary Tree We will focus on different approaches on how to convert a normal binary tree into a threaded binary tree. We will convert our binary tree to single threaded binary tree with right pointers pointing to inorder successor (if it exists).
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.
Culture Will you hire Donald Knuth as a programmer? A manager said Donald Knuth is too theoretical and he would not hire him to lead his team or as a programmer. Donald is widely respected for his theoretical contributions and have been recognized with awards. We will show that Donald is practically strong as a programmer as well.
Problems on Binary Tree Check if a Binary Tree is Balanced by Height In this article, we have explored the algorithm to check if a Binary Tree is balanced by height or not.
Algorithms Linked List with no NULLs A Linked list is a dynamic data structure which can grow or shrink on demand. It is usually implemented using NULLs, we will consider an alternative no NULL approach and use placeholder nodes.
Machine Learning (ML) Different Basic Operations in CNN We have explored the different operations in CNN (Convolution Neural Network) such as Convolution operation, Pooling, Flattening, Padding, Fully connected layers, Activation function (like Softmax) and Batch Normalization.
Algorithms Comparison b/w Different Advanced Sorting algorithms (Interview preparation) We have reviewed and compared different Advanced Sorting algorithms that will help you in your Interview preparation. We have covered 5 sorting algorithms namely bucket, radix, counting, heap and shell sort.
Software Engineering StringBuilder in Java (java.lang.StringBuilder) StringBuilder is a standard library class in Java which can be used in handling string data and is alternative to String Buffer and String data type.
Software Engineering Guide to deploy a Python Web app on Heroku This is a guide on how to deploy a web application based on a Python framework (like Flask) using an HTTP server like Gunicorn on Heroku (a PaaS).
Software Engineering Designing and implementing Binary Tree in JavaScript We have investigated the fundamentals and use of double trees/ Binary tree and how to implement Binary Tree in JavaScript along with all basic operations of binary tree in JavaScript.
Machine Learning (ML) ResNet50 v1.5 architecture ResNet50 v1.5 is the modified version of the original ResNet50 model. ResNet50 v1.5 is slightly more accurate (0.5%) and slightly lower performance (down by 5%) compared to ResNet50.
Algorithms Minimum steps to make binary string empty by removing alternating subsequence in each step Given a string str consisting of only '0's and '1's, the task is to make the string empty by performing minimum number of operations. An operation is defined as the removal of an alternating subsequence from str without changing the order of the remaining characters.
Software Engineering Digit Separators in C++ In this article, we have discussed about Digit Separators in C++. This topic is introduced in C++14. Using digit separators in the code make it easy for human readers to parse large numeric values.
Algorithms Minimum elements to be removed from array to make the sum even Given an array of integer and you have to find minimum no of integers or elements from array need to be removed so that sum of all elements of array results an even value.
Software Engineering Algorithm behind Bill splitting app Ever wondered how Bill Splitting app works? We have explained the graph algorithms used in its design in depth. So let's find out how can we resolve this dependency issue. Which data structure will hit your brain at the first time?
Software Engineering System Design of File Uploading Service We have discussed things we're supposed to keep in mind while designing a web-based file uploading service, handling and restricting the number of uploads by the user, how to handle version history in the database, and efficiently come up with a design.
Algorithms Heavy Light Decomposition of tree Heavy Light Decomposition, a competitive programming algorithm is very useful in solving queries efficiently. We will see its usecase, implementation and finally solve few problems based on it.
Data Structures Soft heap Soft heap is a variant of heap data structure (priority queue). It is a powerful data structure owing to amortized constant time complexity of some basic functions.
Software Engineering Basics of CSS (Cascading Style Sheets) We have covered the basics of CSS in depth. Cascading Style Sheets (CSS) is a style sheet language which is used for designing the webpages and their layouts developed in a markup language like HTML.
Algorithms Longest Decreasing Subsequence using Dynamic Programming In this problem (Longest Decreasing Subsequence), you are given an array of length N. You have to find the longest decreasing subsequence (LDS) from the given array. We have solved this using Dynamic Programming.
Algorithms Longest Common Decreasing Subsequence In this problem (Longest Common Decreasing Subsequence), we are given 2 arrays and we need to find out the longest common decreasing subsequence from those two arrays. This can be solved using Dynamic Programming.
Algorithms Maximum Sum Increasing Subsequence In this problem (Maximum Sum Increasing Subsequence), we are given an array and we need to find out the maximum sum increasing subsequence from that array. This can be solved using Dynamic Programming.
Data Structures Augmented Data Structures Augmenting a data structure (or Augmented Data Structure) means using a existing data structure and making some changes in that data structure to fit our needs. We have explained the idea of augmented data structure with examples.
Machine Learning (ML) Multilayer Perceptron Multilayer perceptron is a fundamental concept in Machine Learning (ML) that lead to the first successful ML model, Artificial Neural Network (ANN). We have explored the idea of Multilayer Perceptron in depth.