Algorithms Longest Palindromic Substring using Dynamic Programming In this article, we have explored the longest palindromic substring problem for which brute force takes O(N^3) time while a Dynamic Programming approach takes O(N^2) time.
Software Engineering Rounding Functions in C / C++ In this article, we have focused on different rounding functions in C and C++ such as floor, ceil, round, trunc and fmod. We have explained each in detail with C++ code examples.
Software Engineering Variables in C Variable in C is a name of a memory location which holds a particular data as defined in the program. We have covered all points related to variables and the different types of variables as well.
Software Engineering Archiving in Python using shutil In this article, we are going to learn about using the shutil module in python to create an archive consisting of several smaller files. This is often required when we want to distribute the source code of any complex software applications which might contain hundreds of different files.
Machine Learning (ML) Hindi OCR (Optical Character Recognition) Hindi OCR is basically a model which is used to recognize handwritten Hindi (Devanagari) characters. We have demonstrated this with a custom CNN model.
Software Engineering Flask SQLAlchemy for Beginners SQLAlchemy is a toolkit and object relational mapper (ORM) that allows programmers to take hold of the power of SQL without all of the trouble of configuring their Python app to communicate correctly.
Algorithms Number of ways to reach a given number using increments of 1 and 2 The problem we will try to solve is to find the Number of ways to reach a given number (or a score in a game) using increments of 1 and 2 with consecutive 1s and consecutive 2s allowed. This is solved in linear time O(N) using Dynamic Programming.
Machine Learning (ML) Understand AdaBoost and Implement it Effectively In this article we will see how AdaBoost works and we will see main advantages and disadvantages that lead to an effective usage of the AdaBoost algorithm.
Machine Learning (ML) Lexicon based Sentiment Analysis Lexicon-based Sentiment Analysis techniques, as opposed to the Machine Learning techniques, are based on calculation of polarity scores given to positive and negative words in a document.
Software Engineering Chrono Library in C++ Chrono library is also used to measure time elapsed during execution of a C++ program. It can measure the time in seconds, milliseconds , micro seconds and nano seconds.
Software Engineering Build Management Software build is the process of converting source code into executable application or program. Build Management plays very important role in releasing an application.
Software Engineering Shutil module in Python Shutil module in Python offers a range of high level operations and functions to work with files and collections of files. The functionalities provided are copying a file, moving a file, disk usage, directory removal and many more.
Software Engineering Module in Python A module in Python is a library which is a collection of various utilities/ functions which can be loaded in external Python code and used accordingly. For example: One module in Python is string.
Software Engineering Writing to a File in C++ In this article, we have explored the way to write to a file in C++ in depth and explored opening and closing a file, appending data to the front of a file and appending data to end of a file (default).
Machine Learning (ML) Simplifying "Intriguing properties of neural networks" In this article, we have explored the paper "Intriguing properties of neural networks" by Christian Szegedy in depth as it is an influential paper which introduces two key properties that define Neural Networks.
Machine Learning (ML) Understanding the VGG19 Architecture VGG19 is a variant of VGG model which in short consists of 19 layers (16 convolution layers, 3 Fully connected layer, 5 MaxPool layers and 1 SoftMax layer). There are other variants of VGG like VGG11, VGG16 and others. VGG19 has 19.6 billion FLOPs.
Software Engineering Using the Pathlib Module in Python Pathlib module was introduced in Python 3.4 to handle file paths better across different Operating Systems. It solves the problems and bugs previously faced with os.path module to achieve similar tasks.
Algorithms Find the Longest Increasing Odd Even Subsequence In this problem, we have formulated an algorithm to find the Longest Increasing Odd Even Subsequence. Brute force approach takes exponential time O(2^N) but a Dynamic Programming approach takes O(N^2) time.
Algorithms Find the Longest Common Increasing Subsequence In this problem, we have formulated an algorithm to find the Longest Common Increasing Subsequence. Brute force approach takes exponential time but a Dynamic Programming approach takes O(N^2) time.
Software Engineering Downloading server files in Node.JS application In this article, you will learn how to download server files in Node.js application. We have used Express framework to demonstrate this and shown an extension where we redirect to a thank you page after download.
Software Engineering How to create and delete folders and files in JavaScript/ NodeJS In this tutorial, we will learn how to create or remove/ delete files and directories in Node.JS (JavaScript). We will use the filesystem module (fs) to achieve this.
Machine Learning (ML) Gaussian Naive Bayes Gaussian Naive Bayes is a variant of Naive Bayes that follows Gaussian normal distribution and supports continuous data. We have explored the idea behind Gaussian Naive Bayes along with an example.
Software Engineering AJAX Introduction with an Example AJAX (Asynchronous JavaScript and XML) is a programming technique that is used to update a web page without reloading it with the help of XMLHttpRequests.
Algorithms Minimum characters added to the front of string to make it palindrome In this problem, we have to formulate an algorithm to find the minimum number of characters to be added to the front of a string to make it a palindrome. To solve this efficiently in linear time O(N), we have to use longest prefix suffix of Knuth Morris Pratt pattern matching algorithm.
Algorithms Rearrange string such that no two adjacent characters are same In this problem, we have to rearrange the characters of the string such that no two adjacent characters are same. To solve this efficiently in O(N log N) time, we will use priority queue data structure.