# Data Structures in C++: An Interview Refresher (Coderust)

Introduction to Graphs - Solution Review: Detect Cycle in Graph This review provides a detailed analysis of the different ways to solve the Detect a Cycle in a Graph challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/NEOrzNE8Znm). Introduction to Linked Lists - Singly Linked List Insertion Let’s look at the C++ implementation for the insertion of a node in a linked list. Trie - Solution Review: List Sort Using Tries This review provides a detailed analysis of the different ways to solve the Array Sort Using Tries Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5707166098915328). Introduction to Heap - Solution Review: Find k largest elements in the Vector In this lesson, we'll look at the solution of challenge, we have covered in the last lesson. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5736829290545152). Introduction to Stack/Queues - Solution Review: Implement a Queue Using Stacks This review provides a detailed analysis of the different ways to solve the Implement a Queue Using Stacks challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jwZDxXNZWx). Trie - Solution Review: Total Number of Words in a Trie This review provides a detailed analysis of the different ways to solve the Total Number of Words in a Trie Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5678724825481216). Trie - Solution Review: Find All Words Stored in Trie This review provides a detailed analysis of the different ways to solve the Find All Words Stored in Trie Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5743939608903680). Introduction to Hashing - Solution Review: Find Symmetric Pairs in an Array This review provides a detailed analysis of the different ways to solve the Find Symmetric Pairs in an Array Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5681162219421696). Introduction to Hashing - Solution Review: Trace the Complete Path of a Journey This review provides a detailed analysis of the different ways to solve the Trace the Complete Path of a Journey Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5746196614217728). Introduction to Trees - Solution Review: Find minimum value in Binary Search Tree This review provides a detailed analysis of the different ways to solve the Find minimum value in Binary Search Tree challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5666224323166208). Introduction to Trees - Solution Review : Find kth maximum value in Binary Search Tree This review provides a detailed analysis of the different ways to solve the Find kth maximum value in Binary Search Tree challenge View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5722608653828096). Introduction to Linked Lists - Challenge 7: Find Middle Value of Linked List Here’s another interesting coding challenge to test your knowledge on linked lists. Introduction to Complexity Measures - Challenge 6: Nested Loop with Multiplication (Advanced) An advanced exercise based on Big(O) of an algorithm that involves nested loops and the loop variables increment with multiplication and addition. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gxQyDzZnQWZ). Introduction to Arrays - Solution Review: Remove Even Integers From an Array This review provides a detailed analysis of how to solve the remove even integers from an array challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xVVAwngJ3x9). Introduction to Arrays - Challenge 10: Rearrange Sorted Array in Max/Min Form Arrange elements in such a way that the maximum element appears at first, then minimum at second, then second maximum at the third position, and second minimum at fourth and so on. Introduction to Arrays - Solution Review: Right Rotate an Array by 1 This review provides a detailed analysis of the different ways to solve the Right Rotate an array challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jjM59RB6Wx). Introduction to Linked Lists - Challenge 3: Deletion by Value Based on how we handled the deletion at head strategy, let’s write the function for deletion by value. Introduction to Graphs - Solution Review: Count the Number of Edges in an Undirected Graph This review provides a detailed analysis of the different ways to solve the Count the Number of Edges in Graph Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/JYlWlq5NO4P). Introduction to Graphs - Challenge 8: Find the Shortest Path between Two Vertices We've dealt with several graph traversals. Now, we'll find the shortest path traversal between two vertices. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVl6g4PWYEk). Introduction to Trees - Solution Review: Find the Height of a Binary Tree This review provides a detailed analysis of the different ways to solve the Find the Height of a Binary Tree challenge View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5714237762568192). Introduction to Arrays - Challenge 6: Find First Unique Integer in an Array Given an array, find the first integer which is unique in the array. Unique means the number does not repeat and appears only once in the whole array. Implement your solution in C++ and see if it runs correctly! Introduction to Trees - Implementing a Binary Search Tree in C++ In this lesson, we'll implement a very basic Binary Search Tree in C++ View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5755997729587200). Introduction to Linked Lists - Challenge 5: Reverse a Linked List Can we implement a program which could reverse a linked list? Let’s find out. Introduction to Arrays - Solution Review: Find First Unique Integer in an Array This review provides a detailed analysis to solve the First Unique Integer in an array challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xV61MjxyKB3). Introduction to Linked Lists - Solution Review: Reverse a Linked List This review provides a detailed analysis of how to solve the Reverse a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/mEGmE5owE4O). Introduction to Graphs - Challenge 9: Remove Edge In this challenge, we will learn how to delete an edge between two vertices. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/YQVRX9yE44O). Introduction to Arrays - Challenge 3: Find Two Numbers that Add up to "value" Given an array and a number <code>value</code>, find two numbers from an array that sum to <code>value</code>. Implement your solution in C++ and see if your output matches with the correct output. Introduction to Linked Lists - Doubly Linked Lists (DLL) After singly-linked lists, we’ve come to the more evolved version of the linked list data structure: doubly-linked lists. Introduction to Graphs - Solution Review: Implement Depth First Search This review provides a detailed analysis of the different ways to solve the Implement Breadth First Search challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xV74rnoOlMr). Introduction to Graphs - Challenge 4: Find a "Mother Vertex" in a Graph Given a graph, can you find a vertex from which all the other vertices are reachable? View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7nODy1vm2vj). Introduction to Graphs - Challenge 3: Detect Cycle in Graph Here's another coding challenge on graphs. You'll implement a cool function which detects loops! View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m282ExAxXR0). Introduction to Hashing - Solution Review: A Subarray with a Sum of 0 This review provides a detailed analysis of the different ways to solve the A Subarray with a Sum of 0 Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5705944180719616). Introduction to Linked Lists - Singly Linked Lists (SLL) This lesson is a brief introduction to the functionality and purpose of the popular data structure called linked list. Introduction to Arrays - Challenge 4: Array of Products of all Elements Given an array, return an array where each index stores the product of all numbers in the array except the number at the index itself. Introduction to Complexity Measures - Useful Formulae In this lesson, we'll study some mathematical formulae that would make calculating time complexity easier! View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xVlqk4xQyVJ). Introduction to Graphs - Challenge 1: Implement Breadth First Search Now, we shall build the BFS algorithm in C++ code. Introduction to Stack/Queues - Solution Review: Generate Binary Numbers from 1 to n using Queue This review provides a detailed analysis to solve the Generate Binary Numbers from 1 to n using Queue challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m27LvN2DQQG). Introduction to Complexity Measures - Solution Review: Big (O) of Nested Loop with Multiplication This review provides a detailed analysis of how to solve the Big (O) of Nested Loop with Multiplication Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xVo6KLGVNB3). Introduction to Complexity Measures - Example 2: Time Complexity of an Algorithm With Nested Loops In this lesson, we will learn how to compute the time complexity of an algorithm that involves nested for loops. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m2MloJQz0wA). Introduction to Complexity Measures - Solution Review: Big (O) of Nested Loop with Addition This review provides a detailed analysis of the time complexity of the Nested Loop with Addition problem! View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVLpJ3y5gJr). Introduction to Trees - What is a Binary Tree? An introduction to binary trees and different types of binary trees View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B81ORQLDYkX). Introduction to Trees - Solution Review: Find Ancestors of a given node in a BST This review provides a detailed analysis of the different ways to solve the Find Ancestors of a given node in a Binary Search Tree challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5742571661819904). Introduction to Linked Lists - Solution Review: Return the Nth Node from the End This review provides a detailed analysis of how to solve the Return the Nth Node from the End in a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qAxlo4lyWNk). Introduction to Graphs - Solution Review: Find a "Mother Vertex" in a Graph This review provides a detailed analysis of the different ways to solve the Find a "Mother Vertex" in a Graph challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B81ovLMVA6J). Introduction to Arrays - Solution Review: Array of Products of All Elements This review provides a detailed analysis of how to solve the array of products of all elements challenge! View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B8r22gJMG2o). Introduction to Stack/Queues - What is a Stack? An introduction to the Stack data structure, its uses, and its functionality. Introduction to Linked Lists - Solution Review: Find Middle Value of a Linked List This review provides a detailed analysis of how to solve the Find the Middle Value in a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVQY2PYEOLG). Introduction to Linked Lists - Singly Linked Lists vs. Doubly Linked Lists Let's see how the two renditions of the linked list structure fare against each other. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gx6lVB0D4xl). Introduction to Graphs - Challenge 5: Count the number of Edges in an Undirected Graph In this lesson, we will figure out if it's possible to count the total number of edges in a graph. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/mE8GgqAPVQG). Introduction to Linked Lists - Solution Review: Remove Duplicates from a Linked List This review provides a detailed analysis of the different ways to solve the Remove Duplicates from a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7An88W8MAoO). Introduction to Graphs - Challenge 7: Check if an Undirected Graph is Tree or not In this lesson, we will learn the difference between a graph and a tree. You will use this knowledge for the challenge below. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVDXOZ0pnzD). Introduction to Graphs - Types of Graphs This lesson showcases the two main categories of graphs. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/RMPjxLYLZXE). Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Basic) This review provides a detailed analysis of how to solve the nested loop with a multiplication problem. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jwJB6DqZGp). Introduction to Linked Lists - Solution Review: Search in a Singly Linked List This review provides a detailed analysis of how we solve the Search in a Singly Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qV2DQxJXZm2). Introduction to Trees - Solution Review : Find Nodes at "k" distance from the Root This review provides a detailed analysis of the different ways to solve the Find Nodes at "k" distance from the Root challenge View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5675342538735616). Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Intermediate) Here's a solution review for the exercise in the last lesson. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gx63N19xrDY). Introduction to Hashing - Solution Review: An Array as a Subset of Another Array This review provides a detailed analysis of the different ways to solve the An Array as a Subset of Another Array Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5644534738321408). Introduction to Heap - Solution Review : Find k smallest elements in a List Have questions about Solution Review : Find k smallest elements in a List? Go for it! View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5670377556541440). Introduction to Trees - More on Complete Binary Trees In this lesson, we are going to discuss what Complete Binary Trees are and how elements are inserted into them. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B8OO5pV8Nrk). Introduction to Graphs - Challenge 2: Implement Depth First Search After the BFS algorithm, we will now tackle the implementation for Depth First Search. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVA0EqnQy47). Introduction to Arrays - Solution Review: Merge Two Sorted Arrays This review provides a detailed analysis of the different ways to solve the merge two sorted arrays challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m27w97QNJER). Summary of Data Structures - Conclusion And that's a wrap! We hope you had fun taking this course View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5744981138472960). Introduction to Graphs - Solution Review: Remove Edge This review provides a detailed analysis of the different ways to solve the Remove Edge Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/N8p3DrNwLjN). Introduction to Complexity Measures - Challenge 4: Nested Loop with Multiplication (Basic) A basic exercise based on the Big(O) of an algorithm that involves nested loops and the loop variables increment with multiplication. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jyOpEnD71Q). Introduction to Linked Lists - Solution Review: Deletion by Value This review provides a detailed analysis of how to solve the Deletion by Value challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/N81GDNOm4mK). Introduction to Arrays - Challenge 7: Find Second Maximum Value in an Array Given an array, can you find the second maximum element in the array? Implement your solution in C++ and see if your output matches the correct output! Introduction to Complexity Measures - Challenge 5: Nested Loop with Multiplication (Intermediate) Here's an intermediate level exercise to determine the Big(O) time complexity of an algorithm that involves nested loops and the loop variables increment with multiplication. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/RMwpJkR4qOK). Introduction to Arrays - Solution Review: Find Second Maximum Value in an Array This review provides a detailed analysis of the different ways to solve the Find Second Maximum Value in an array challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7AYVKw99NPO). Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Advanced) This review provides a detailed analysis of how to solve the Nested Loop with Multiplication challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/JYNY1nmjxOg). Introduction to Stack/Queues - Solution Review: Sort Values in Stack This review provides a detailed analysis of the different ways to solve the Sort Values in a Stack challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xV25LPr74Gr). Introduction to Linked Lists - Challenge 9: Union & Intersection of Linked Lists In this lesson, linked lists meet data set operations. Introduction to Linked Lists - Solution Review: Insertion at Tail This review provides a way to solve the Insertion at Tail challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xVoEw218EOE). Introduction to Complexity Measures - Common Complexity Scenarios This lesson summarizes our discussion of complexity measures and includes some commonly used examples and handy formulae to help you with your interview. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVL4zjAERLk). Introduction to Complexity Measures - Challenge 2: Big (O) of Nested Loop with Subtraction Compute Big(O) of an algorithm that involves nested loops and the loop variables decrement. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVAko0wprA2). Introduction to Complexity Measures - Challenge 7: Nested Loop with Multiplication (Pro) A pro-level exercise based on Big(O) of an algorithm involving nested loops and the loop variables increment with multiplication and addition. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xozwVXx4DDn). Introduction to Complexity Measures - Solution Review: Big (O) of Nested Loop with Subtraction This review provides a detailed analysis of how to solve the Big (O) of Nested Loop with Subtraction challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7n93n6r2Ypj). Introduction to Stack/Queues - Solution Review: Implement Two Stacks using one Array This review provides a detailed analysis of the different ways to solve the Implementing Two Stacks using one Array challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gx6PV9R6V2j). Introduction to Stack/Queues - Solution Review: Check Balanced Parentheses using Stack This review provides a detailed analysis to solve the Check Balanced Parentheses using Stack challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B8OJlZDqO2o). Introduction to Stack/Queues - Solution Review: min() Function Using a Stack This review provides a detailed analysis of the different ways to solve the min() Function Using a Stack challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/NEOJll2OD6v). Introduction to Linked Lists - Solution Review: Find the Length of a Linked List This review provides a detailed analysis of how to solve the Find the Length of a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/B8nZvpkRDNW). Introduction to Arrays - What is an Array? This lesson briefly defines arrays, their types, and the difference between one dimensional and two dimensional arrays. We will also discuss how arrays are stored in memory. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/JYlGlXpOP62). Introduction to Arrays - Solution Review: Find Two Numbers that Add up to "value" This review provides a detailed analysis of the different ways to solve the find two numbers that add up to "value" challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7nOqNj0x52j). Introduction to Hashing - Solution Review: Check if Arrays are Disjoint This review provides a detailed analysis of the different ways to solve the Check if Arrays are Disjoint Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5710161838604288). Introduction to Arrays - Solution Review : Find Minimum Value in an Array This review provides a detailed analysis of the different ways to solve the find minimum value in array challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7nOArvZnQjG). Introduction to Arrays - Solution Review : Rearrange Positive & Negative Values This review provides a detailed analysis of the different ways to solve the Rearrange Positive & Negative Values challenge View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gx2gr0GzNY3). Introduction to Stack/Queues - What is a Queue? This lesson gives an introduction to the queue data structure, its various uses, and types. We will also go through the inner workings of a Queue by briefly discussing each of its functions. Introduction to Complexity Measures - Challenge 3: Big (O) of Nested Loop with Multiplication Compute Big(O) of an algorithm that involves nested loops and the loop variables increment with multiplication. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/JYPElD65lKD). Introduction to Trees - An Introduction to Trees and Basic Tree Properties! In this chapter, we are going to study the basics of the tree data structure! View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVMzgL0nZAk). Introduction to Graphs - Complexities of Graph Operations Let's discuss the performance of the two graph representation approaches. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jjlnyyOrRR). Introduction to Stack/Queues - Challenge 2: Implement Two Stacks using one Array Can you implement two stacks using a single array? A solution is placed in the “solution” section for your help, but we would suggest you solve it on your own first. Introduction to Heap - Solution Review : Convert Max-Heap to Min-Heap Have questions about Solution Review : Convert Max-Heap to Min-Heap? Go for it! View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/6332798952538112). Introduction to Linked Lists - Challenge 2: Search in a Singly Linked List This lesson explains how searching is done in a singly linked list. There is also a coding exercise to test your concepts. Introduction to Stack/Queues - Challenge 5: Sort Values in a Stack In this lesson, we will learn how to sort elements using a stack. Introduction to Linked Lists - Challenge 6: Detect Loop in a Linked List Loops in linked lists can be dangerous. Now, you’ll create an algorithm to detect them. Trie - Solution Review: Word Formation From a Vector Using a Trie This review provides a detailed analysis of the different ways to solve the Word Formation From a Vector Using a Trie Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5667240082931712). Introduction to Linked Lists - Challenge 1: Insertion at Tail Now, we’ll tackle the second insertion strategy in linked lists. However, you will be the one implementing it! Introduction to Linked Lists - Challenge 8: Remove Duplicates from Linked List In this lesson, you must figure out the C++ solution for removing duplicates from a linked list. Introduction to Complexity Measures - Example 1: Measuring Time Complexity of a Single Loop Algorithm In this lesson, we are going to learn how to compute the time complexity of an algorithm that involves a for loop. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7nn1ggVyL7O). Introduction to Hashing - The Hash Function This is the first building block of a hash table. Let's see how it works. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5758448008429568). Introduction to Hashing - Solution Review: Find Two Pairs Such That a+b = c+d This review provides a detailed analysis of the different ways to solve the Find Two Pairs Such That a+b = c+d Challenge. View the lesson [here](https://www.educative.io/collection/page/5642554087309312/5646276079124480/5633049995771904). Introduction to Complexity Measures - Introduction to Asymptotic Analysis and Big O In this lesson, we will learn about asymptotic notation, an important tool applied to the analysis of algorithms. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVQq0WLjO3p). Introduction to Linked Lists - Linked Lists Quiz: Test your understanding of Linked Lists The top ten most commonly asked interview questions about the linked list will be covered in this lesson in the form of a quiz. Introduction to Arrays - Challenge 9: Rearrange Positive & Negative Values Given an array, can you re-arrange its elements in such a way that the negative elements appear at one side and positive elements appear in the other? Solve this problem in C++ and see if your code runs correctly! Introduction to Stack/Queues - Stack (Implementation) In this lesson, we are going to look at how Stacks are implemented in C++ and how the main Stack functions actually work. Introduction to Linked Lists - Challenge 10: Return the Nth node from End Returning the Nth node from the start of a linked list is easy. Can you return Nth node from the end of a list? Introduction to Complexity Measures - Complexity Quiz: Test your understanding of Complexity The top ten most commonly asked interview questions about Complexity Measure will be covered in this lesson in the form of a quiz. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gxQxZy2PrDY). Introduction to Stack/Queues - Challenge 4: Implement a Queue Using Stacks We have seen the difference between stacks and queues, but is it possible to make one from the other? Let’s find out. Introduction to Stack/Queues - Solution Review: Next Greater Element Using a Stack This review provides a detailed analysis of the different ways to solve the Next Greater Element Using a Stack challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVVR3oRmJ10). Introduction to Linked Lists - Challenge 4: Find the Length of a Linked List Let’s write a function which can tell us the length of a linked list. Introduction to Arrays - Challenge 8: Right Rotate an Array by 1 Given an array, can you rotate its elements by one index from right to left? Implement your solution in C++ and see if your code runs successfully! Introduction to Stack/Queues - Challenge 3: Reversing First k Elements of Queue Can you reverse first “k” elements in a given queue? A solution is placed in the “solution” section for your help, but we would suggest you to solve it on your own first. Introduction to Arrays - Multidimensional Arrays In this lesson, we'll be learning about static multidimensional arrays and dynamic multidimensional arrays. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/NEXOXYz47ND). Introduction to Arrays - Challenge 5: Find Minimum Value in an Array Given an array, can you find the minimum value in an array? Implement your solution in C++ and see if your output matches the expected output. Introduction to Stack/Queues - Solution Review: Evaluate Postfix Expression Using a Stack This review provides a detailed analysis of the different ways to solve the Evaluate Postfix Expression Using Stack challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gxQZEG41nkY). Introduction to Complexity Measures - Comparing Algorithms In this lesson, we are going to learn how two or more algorithms may be compared. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xVVyKOr31Qn). Introduction to Linked Lists - Linked Lists vs. Arrays Let's put the two data structures against each other to find out which is more efficient. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVVrwx1VWB2). Introduction to Arrays - Solution Review: Rearrange Sorted Array in Max/Min Form This review provides a detailed analysis to solve the Re-arrange Sorted Array in Max/Min Form challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVD52x8PKv7). Introduction to Graphs - Solution Review: Find the Shortest Path Between Two Vertices This review provides a detailed analysis of the different ways to solve the Find the Shortest Path Between Two Vertices Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3j9zjEBkWzx). Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Pro) This review provides a detailed analysis of the different ways to solve the Nested Loop with Multiplication (Pro) challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/7nj4EXQZnRr). Introduction to Linked Lists - Deletion in a Singly Linked List After insertion and search, we’ll be tackling the concept of deletion in a linked list. Introduction to Graphs - Challenge 6: Check if a Path Exists Between Two Vertices Given a graph and two vertices, can you write a code to check if a path exists between the two vertices? View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/gx20Z1kO9lD). Introduction to Graphs - Solution Review: Implement Breadth First Search This review provides a detailed analysis of the different ways to solve the Implement Breadth First Search challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m2YAoKv725p). Introduction to Graphs - Solution Review: Check if a Path Exists Between Two Vertices This review provides a detailed analysis of the different ways to solve the Check if a Path Exists Between Two Vertices Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jyPyvLWGgO). Introduction to Graphs - Solution Review: Check if an Undirected Graph is a Tree or Not This review provides a detailed analysis of the different ways to solve the Check if an Undirected Graph is a Tree or Not Challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/xV71zjJo5Gl). Introduction to Graphs - Graph Quiz: Test your understanding of Graphs Here are the ten most commonly asked interview questions about graphs. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m2YPGvDRgQp). Introduction to Trees - What Makes a Tree 'balanced'? In this chapter, we are going to study what makes a tree balanced. We are also going to look at a high-level description of the algorithm used to determine if a given tree is balanced. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m2Y5QJpq4qn). Introduction to Complexity Measures - Other Common Asymptotic Notations and Why Big O Trumps Them This lesson covers the various asymptotic notations for algorithms and why computer scientists prefer Big O instead of other notations. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/JYYpmPpB1vD). Introduction to Stack/Queues - Solution Review: Reversing First k Elements of Queue This review provides a detailed analysis to solve the Reversing First k Elements of Queue challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/qVVzL3XK9Kr). Introduction to Linked Lists - Solution Review: Detect a Loop in a Linked List This review provides a detailed analysis of how to solve the Detect a Loop in a Linked List challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m7yj6NGOyjp). Introduction to Arrays - Challenge 2: Merge Two Sorted Arrays Given two sorted arrays, merge them into one array which should also be sorted. Implement the solution in C++ and see if your code runs successfully! Introduction to Linked Lists - Basic Linked List Operations This lesson lists the various operations that can be performed on linked lists View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/RM59PoJVLQE). Introduction to Complexity Measures - Challenge 1: Big (O) of Nested Loop with Addition Compute the Big O complexity of an algorithm that involves nested loops where the loop variables increase with addition. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/m2MMRvzkxDO). Introduction to Arrays - Arrays Quiz: Test Your Understanding of Arrays Top ten most commonly asked interview questions about arrays will be covered in this lesson in the form of a quiz. Introduction to Arrays - Challenge 1: Remove Even Integers From an Array Given an array, remove all even integers from it. Implement this solution in C++ and see if it runs without an error. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/3jwxgpxRq0n). Introduction to Linked Lists - Solution Review: Union and Intersection of Linked Lists This review provides a detailed analysis of how to solve the Union and Intersection of Linked Lists challenge. View the lesson [here](https://www.educative.io/courses/data-structures-in-cpp-an-interview-refresher/393Y8kjG69r). Introduction to Stack/Queues - Challenge 1: Generate Binary Numbers from 1 to n using Queue Can you generate binary numbers from 1 to any given number ‘n’? Let’s find out! Introduction to Stack/Queues - Queue (Implementation) Lets look at the basic functionality and implementation of queues in C++!

About the Data Structures in C++: An Interview Refresher (Coderust) category
[Data Structures in C++: An Interview Refresher (Coderust)]
(1)

Confused about the inner loop
[Introduction to Complexity Measures - Solution Review: Big (O) of Nested Loop with Multiplication]
(3)

Why Complexity is O(n)?
[Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Pro)]
(2)

Next greater element using a stack
[Introduction to Stack/Queues - Solution Review: Next Greater Element Using a Stack]
(2)

Help in clearing pop() method
[Introduction to Stack/Queues - Solution Review: min() Function Using a Stack]
(2)

Union and Intersection of Linked Lists using Maps
[Introduction to Linked Lists - Solution Review: Union and Intersection of Linked Lists]
(2)

Error in the introduction to complexity measures
[Introduction to Complexity Measures - Introduction to Asymptotic Analysis and Big O]
(5)

Time Complexity Challenge 4 Solution Review
[Introduction to Complexity Measures - Solution Review: Nested Loop with Multiplication (Basic)]
(2)

Question about method .printList() on lesson "Single Linked List Insertion"
[Introduction to Linked Lists - Singly Linked List Insertion]
(1)

The Solution is wrong
[Introduction to Arrays - Solution Review: Array of Products of All Elements]
(1)

Where is this "i = n;" coming from?
[Introduction to Complexity Measures - Example 1: Measuring Time Complexity of a Single Loop Algorithm]
(1)

Who wrote solutions !? So many basic mistakes!
[Introduction to Linked Lists - Solution Review: Search in a Singly Linked List]
(1)