This is Topological Sort, using Depth First Search. It’s the third video in a playlist, following an introduction to topological sorting, and a different, very intuitive algorithm called Kahn’s Algorithm. Before this video, you should watch those two videos, and also the video on depth first search, including the stuff on discovery and finishing times, […]

# Tag: data structures

## Updated: Kahn’s Algorithm for Topological Sorting

This video covers Kahn’s Algorithm for topological sorting. No. Still no. Really? I don’t know if my students know who that is, but they should. Those weren’t spelled right. Before watching this video, you should watch the introduction, especially if you don’t know what topological order is. If you just want the clean, final, linear […]

## Kosaraju’s Algorithm for Strongly Connected Components

This video covers strongly connected components in directed graphs. You should already understand graph basics including depth first search, as well as BOTH topological sorting algorithms. After introducing strongly connected components, I will try to show some intuition of where a linear time algorithm comes from and explain why it works, all with a running […]

## Find the maximum path sum between two leaves of a binary tree | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which helps us in Finding the maximum path sum between two leaves of a binary tree..First let us take an example. In this binary tree, the maximum path sum will be between nodes 3 and 10.. […]

## Lowest Common Ancestor in a Binary Search Tree | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which helps us in finding the lowest common ancestor in a binary search tree iteratively. First, let us understand what do we mean by Lowest Common Ancestor. The lowest common ancestor between two nodes n1 and […]

## Convert a given Binary Tree to Doubly Linked List | Set 4 | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which converts a given binary tree to doubly linked list.. First, let us take an example. The left and right pointers in nodes are to be used as previous and next pointers respectively in converted DLL. […]

## Remove all leaf nodes from the binary search tree | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which helps us in Removing all leaf nodes from the binary search tree. Let us take an example. We traverse given Binary Search Tree in preorder way. During traversal we check if current node is leaf, […]

## Flip Binary Tree | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which flips a given binary tree. First, let us take an example.. In the flip operation, left most node becomes the root of flipped tree and its parent become its right child and the right sibling […]

## Convert a given Binary Tree to Doubly Linked List | Set 3 | GeeksforGeeks

Hello friends! And, welcome to another tutorial on GeeksforGeeks. In this video we are going to understand the program which converts a given binary tree to doubly linked list.. First, let us take an example. The left and right pointers in nodes are to be used as previous and next pointers respectively in converted DLL. […]

## Minimum swaps required to Sort Binary array | GeeksforGeeks

Hi and welcome to GeeksforGeeks, in this tutorial we will be discussing the minimum swaps required to sort a binary array The problem statement is that Given a binary array, task is to sort this binary array. This can be done by finding number of zeroes to the right side of every 1 and add […]