Priority Queues are similar to queues where we insert an element from the back and remove an element from the front, but with one difference that the logical order of elements in the priority queue depends on the priority of the elements. In this blog, we will discuss the priority queues, its properties, its various implementations, and its applications. We will also analyze and compare the various implementations of the Priority Queue.
Heap is a very useful data structure that every programmer should know well. The heap data structure is used in Heap Sort, Priority Queues. The understanding of heaps helps us to know about memory management. In this blog, we will discuss the structure, properties, and array implementation of heaps.
This is an interview problem asked by companies like Myntra, Visa, Oracle, Adobe, etc. The problem is to remove the duplicate nodes from the given Linked List so that only unique nodes(with unique data values) are present.
Tree Data Structure supports various operations such as insertion, deletion and searching of elements along with few others. This blogs discussed those operations along with explaining its applications.
Given a Linked List, your task is to find whether the given singly linked list is a palindrome or not. This is an interview problem asked in many companies like Amazon, Microsoft, Adobe, Flipkart and other big companies.
In this blog, we will learn various types of constraints that can be applied on a table. These constraints can be used to validate the data present in the table. We will learn about NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK, and DEFAULT
In this blog, we will learn what is a proxy server, how does it work and what are the various types of proxy servers. We will also see why we should use a proxy server and what are the risks associated with it.
Array and Linked List are the two most used data structures. It's really important to understand and compare the advantages and disadvantages of both array and linked list. In this blog, we will compare these two linear data structures. So let's get started.
In this blog, we will learn what is Address Resolution Protocol and how it helps in communication between two devices. We will also discuss what are the problems that can arise while using this protocol and see sample examples of ARP packets which are captured.
The idea of this blog is to discuss the famous data structure called Array. An Array is one of the important data structures that are asked in the interviews. So, we will learn about arrays and we will also discuss about the idea of the dynamic array and its amortized analysis. So let's get started.
In this blog, we will learn one of the flow control method i.e Stop and Wait Protocol. We will discuss various situations that can occur while transmitting the data. We will also mathematically derive the efficiency and the throughput of this protocol.
In this blog, we will learn about the various network traffic types, that are - Unicasting, Anycasting, Multicasting, and Broadcasting. We'll also see their advantages and disadvantages along with their differences.
Data structures are widely used in every aspect of computer science. Data structures are the way of organizing and storing data in a computer so that it can be used efficiently. In this blog, we will look into data structures, its types, operations and applications.
In this blog, we will learn about different data transmission modes based on the direction of exchange, synchronization between the transmitter and receiver, and the number of bits sent simultaneously in a computer network.
In this blog, we will learn about the various keys like the super key, candidate key, primary key, alternate key and foreign key. We will discuss how to identify and differentiate between them with examples.
In this blog, we will learn what is an attribute, its various types and symbols used to represent them. We will see various types of attributes such as single & multi-valued attributes, simple & composite attribute, stored & derived attribute and key attribute.
In this blog, we will study various types of relationships in DBMS which help in defining the association between various entities. Also, we will discuss the types of participation constraints which may exist between the relationship and the entity type.
Given an array where elements are sorted in ascending order, convert it to a height balanced BST. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differs by more than one.
In this blog, we will learn what is an entity, entity type and entity set and how these terms are related. We will learn the difference between these terms as these terms are often used interchangeably. We will take various examples to understand this.
Iteration and Recursion are programming methodologies with similar objective and thus one might seem trivial compared to another, but that's not the case. We will be discussing the important differences between iteration and recursion and how both are useful.
In this blog, we will see how an ER model is used in database designing. We will also see how an ER model is made using various components of the ER diagram. We will also discuss the features of an ER model along with its advantages and disadvantages.
In this blog, we will learn about the time and space complexity of an Algorithm. We will learn about worst case, average case, and best case of an algorithm. We will also see various asymptotic notations that are used to analyse an algorithm. So, let's learn the algorithm of an algorithm.
Given a binary tree, invert the binary tree and return it. An inverted form of a Binary Tree is another Binary Tree with left and right children of all non-leaf nodes interchanged. You may also call it the mirror of the input tree.
In this blog, we will learn about various process scheduling algorithms used in Operating System. We will learn about FCFS, SJF, SRTF, Round-Robin, Priority-based, Highest Response Ratio Next, Multilevel Queue, and Multilevel Feedback Queue scheduling.
In this blog, we will learn what an Operating System is and what are the goals of an Operating System. We will also learn the functionalities of an Operating System that helps in achieving the goal of the OS.
In this blog, we will learn about the Context Switching in the Operating System. We will learn all the steps involved in Context Switching and in the end, we will see the advantages and disadvantages of Context Switching also.
In this blog, we will learn the difference between Multiprogramming, Multiprocessing, and Multitasking. These terms come into play when we talk about our processes and the processors. Let's see the difference between these.
In this blog, we will learn about various types of times that we come across during using some CPU scheduling algorithms i.e. Burst time, Arrival time, Exit time, Response time, Waiting time, Turnaround time, and Throughput.
Given two strings S1 and S2 of size m and n respectively, you need to check whether the two strings are an anagram of each other or not. S1 is an anagram of S2 if the characters of S1 can be rearranged to form S2.
Given two integer arrays A and B of size m and n, respectively. We need to find the intersection of these two arrays. The intersection of two arrays is a list of distinct numbers which are present in both the arrays. The numbers in the intersection can be in any order.
Given two integer array A and B of size m and n(n <= m) respectively. We have to check whether B is a subset of A or not. An array B is a subset of another array A if each element of B is present in A. (There are no repeated elements in both the arrays)
Feature engineering is the process of using domain knowledge of the data to create features that make machine learning algorithms work. If feature engineering is done correctly, it increases the predictive power of machine learning algorithms by creating features from raw data that help facilitate the machine learning process. Feature Engineering is an art.
An open-source machine learning framework for everyone. As I believe, when we know the internals of a library, we can get the most out of it. And we feel much more confident while working with that library. Today, TensorFlow is being used by top companies like Google, Uber, Airbnb, Nvidia, Dropbox, etc.
All over the world, millions of students are looking forward to pursuing a career in the field of computer science. Though a lot of learning resources are available online, still, most of the students are struggling to become good at it and crack the interview.