Hello, Myself Aman Kumar Goyal and I am a 3-star coder at CodeChef and you might wonder what a 3-star coder would tell about competitive programming as for experienced programmers 3 star is not a big deal but let me tell you I have been trying my hands at cp since a year and at starting I wasn’t able to solve even one problem of long challenge and I started to feel like a loser and I thought that I will never be able to perform better and it took some time to perform better, I even struggled a lot…


Artificial Intelligence is a hot topic now and nearly everyone wants to learn about it but artificial intelligence is a broader term consisting of a lot of many different types and techniques. Machine learning acts as a gateway to the world of artificial intelligence it is the common starting point from where people decide which subdomain of A. I. to choose and learn.

Linear Regression is the first algorithm which is taught in machine learning it is an easy regression algorithm taken from statistic. It is a starting point in machine learning it teaches a beginner how a problem is…


Photo by Alex Knight on Unsplash

“Machine Learning and Artificial Intelligence is overhyped and will take you nowhere soon.” Have you heard a lot of this term? Are you in dilemma as a beginner where to dive into the world of ML & AI? Hi myself Aman Kumar Goyal and today I’ll share with you my thoughts on the above specified topic.
I am a student and my thoughts would be for those students who are thinking about learning AI but are in a dilemma. So, let’s begin.

There is a wave of AI going around and one can see that nearly everyone wants to learn…


Well if you are enrolled in a computer science course or degree or somewhat associated with computer science domain you might have heard about these two terms and you might be wondering what are these terms , what they mean or signify and why is there so much buzz about it, so we will cover all these things and it will be a complete beginner’s guide to git , git commands and GitHub. Let’s start step by step.

Version Control

Version control systems are a category of software tools that helps software developers manage changes to source code over time. Version control…


Photo by Chinh Le Duc on Unsplash

K Nearest Neighbors is a very simple and intuitive supervised learning algorithm. A supervised learning algorithm is one in which you already know the result you want to find. It works like this you give your model a dataset having data and results, using the data your model creates a decision boundary to predict the desired result.

It is a really intuitive and simple algorithm and it can be used both as a classifier and as a regressor. I will not give you a standardized definition of classification and regressor as it might confuse you let’s understand with an example…


Hello readers, now we will begin our discussion of binary trees you might have seen linear data structures but a tree is a non-linear one. So, lets dive deep in the details of binary tree and see what are they? How are they implemented? and various functionalities of binary tree.

A tree is a non-linear data structure with hierarchical arrangement of data elements called nodes. The central node at the top is called root node as it is the root of tree and all elements can be accessed by this node. The top nodes are parent node and other nodes…


Hello readers, in this blog we are going to learn about queues and I am going to give you in-depth insight to queues and we will also see some important and powerful methods that comes in C++ Standard Template Library. So, lets get started…

Photo by Levi Jones on Unsplash

Queue data structure is a linear data structure which follows a FIFO i.e. First In First Out order, so you might be asking what does that mean? it’s means is element which comes first in the queue will be the first to leave it. As you can see in the above image, in a waiting queue…


Photo by Sincerely Media on Unsplash

Welcome back readers, in this blog we are going to learn basics of stack and their coding implementation. Inbuilt functions and methods will also be covered briefly. So lets dive right in and begin our learning journey about stacks.

What is a Stack?

A stack is a linear data structure having data elements stored in a contiguous manner. It follows LIFO order i.e. Last In First Out order, in which the element which is inserted at the end gets popped out first. One can only push or pop an element from the top. …


Linked lists are very important, useful and powerful data structures and are used for many purposes in C++. In this blog I am going to cover as much as possible from a beginner’s point, so let’s get started.

Linked list is a linear data structure in which data is stored in a contiguous manner, each element is stored in the form of a node, a node is created dynamically on run-time and these nodes are connected using pointers.
Linked lists are of many times

  • Singly Linked List.
  • Doubly Linked List.
  • Circular Linked List.
  • Circular Doubly Linked List.

Below is an…


Hey folks, In this blog I am going to introduce you to vectors and its basic functionalities and capabilities of a vector.

You might be working with arrays and vectors are no different than that but they comes with additional features, capabilities and many powerful inbuilt functions and methods.

Vectors are dynamic arrays which can change their size dynamically at runtime. Continuous space is allocated which makes it easier to iterate over the vector and it takes linear time to insert or remove element at position other than that of end point, it takes constant time to insert or remove…

Aman Kumar Goyal

Competitive Programmer | Web developer | Coding Blocks CA | Editor at RootTech . Connect : @amanearthian.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store