Algorithms Generate 0 and 1 with 25% and 75% probability Given a function that generates 0, 1 50% of the time (like most of the random function in modern programming languages do), how can we design a function that return 0, 1 25%, 75% of the time?
divide and conquer Skyline Problem In this article, we have explained an efficient approach to solve the Skyline Problem using a Divide and Conquer algorithm.
Algorithms Divide and Conquer In this article, we will discuss what is Divide and Conquer technique and how is it helpful. We will see various examples which uses the Divide and Conquer approach in their algorithms.
Algorithms Worst Case of Quick Sort In this article, we will discuss about the Worst Case Time Complexity about 'Quick-Sort' algorithm along with the complete time complexity analysis of the worst case.
Dynamic Programming (DP) Longest Geometric Progression In this article, we have explained how to solve the problem of Longest Geometric Progression efficiently using Dynamic Programming. It involves the use of Map data structure in implementation which is different from other standard problems.
Greedy Algorithms Fitting Shelves Problem [Greedy Algorithm] In this article, we will understand what fitting shelves problem is and will see a greedy approach algorithm of solving this problem.
Algorithms Majority element in sorted array In this article, we will be learning how to find the majority element in a sorted array. This involve using Linear Search, Binary Search and a constant time algorithm.
queue K queues in an array In this article, we have explained 2 approaches to implement K queues in a single array. The challenge is that the space of the array should be utilized optimally by the K queues.
divide and conquer Find floor in sorted array In this article, we are going to see various methods of finding the floor of a given number from a given sorted array. To solve this efficiently, the concept of Divide and Conquer / Binary Search is required.
Problems on Binary Tree Check if binary tree is symmetrical In this article, we will discuss the algorithms to find out whether the given binary tree is symmetrical or non-symmetrical.
queue Interleave first half of Queue with second half In this article, we are going to explore an algorithm to interleave first half of queue with second half.
List of Mathematical Algorithms Egyptian Fraction Problem [Greedy Algorithm] In this article, we will explore the fascinating concept of Egyptian Fractions and will learn what they are and will also see an example of how they can be solved using greedy algorithm techniques.
Sorting Algorithms Different Pivot selection in Quick Sort In this article, we have explored Different Pivot selection techniques in Quick Sort such as Median of Medians, Mode, First Element and much more along with Time Complexity of all methods.
Algorithms Tail Recursion In this article, we have explored the idea of Tail Recursion in depth with several code examples along with comparison with Non-Tail Recursion.
Algorithms Design and Analysis of Algorithms (DAA) [Syllabus] This article presents the detailed Syllabus of the subject "Design and Analysis of Algorithms (DAA)" also known as "Data Structure and Algorithms (DSA)". This subject is taught in Bachelor of Science or Bachelor of Technology course in Computer Science.
Culture 20 Best Programmer Quotes [GOAT version š] In this article, we have presented the top 20 Best Programmer Quotes of all time. Every GOAT š programmer needs to go through them and enjoy the excellence. This include quotes from significant figures like Donald Knuth, Edsger Dijkstra, Peter Norton and much more.
Graph Algorithms DāEsopo-Pape Algorithm In this article, we are going to explore DāEsopo-Pape Algorithm, a single source shortest path algorithm proposed by DāEsopo and Pape in 1980. This is an efficient alternative to the famous Dijkstra's Algorithm, but has an exponential time complexity in the worst case.
Algorithms Design LFU (Least Frequently Used) Cache In this article, we will be designing a LFU (Least Frequently Used) Cache using different Data Structures such as Singly Linked List, Doubly Linked List, Min Heap and much more.
Algorithms Double Hashing In this article, we will discuss about Double Hashing, a technique to resolve hash collisions in hash tables along with Time Complexity analysis of Double Hashing.
Algorithms 2 queues in a single array In this article, we have presented 2 different approaches to implement 2 Queue Data Structure using a single Array Data Structure.
Algorithms Quadratic Probing In this article, we will discuss about quadratic probing, a solution for hash collisions in hash tables.
Algorithms Examples of Hash Functions In this article, we have listed several examples of good Hash Functions which you are used conveniently. This can be used to hash any data (numeric and string). Some examples are PJW hash, Division Hash, BUZ hash and much more.
Algorithms Algorithm to convert Hexadecimal to Binary In this article, we have presented the basics of Hexadecimal and Binary representation and an algorithm to convert Hexadecimal to Binary.
Algorithms Linear Probing in Hashing In this article, we have explored the algorithmic technique of Linear Probing in Hashing which is used to handle collisions in hashing. We have explained the idea with a detailed example and time and space complexity analysis.
Sorting Algorithms Different Hybrid Sorting Algorithms In this article, we will discuss about various Hybrid sorting algorithms such as Tim Sort Algorithm. Hybrid Sorting Algorithms tend to perform better than pure Sorting Algorithms and hence, are widely used in practice.