Graph Coloring
Given an undirected graph, determine if it can be colored with two colors such that adjacent vertices have different colors.
Graph Valid Tree
Determine if n nodes and an edge list form a valid tree (connected and acyclic).
Network Delay Time
Given a directed weighted graph and a starting node, find the minimum time for a signal to reach all nodes, or -1 if unreachable.
Prim's Minimum Spanning Tree
Given a connected undirected weighted graph, compute the total weight of its minimum spanning tree using Prim's algorithm.
Kruskal MST
Implement Kruskal's algorithm to compute the total weight of a minimum spanning tree in a connected undirected graph.
Topological Sort via DFS
Return a deterministic topological ordering of nodes in a directed acyclic graph using DFS, or an empty list if a cycle exists.
Course Schedule Ordering
Determine a valid sequence to complete all courses respecting prerequisite constraints.
Minimum Height Trees
Given an undirected tree, find all root nodes that minimize the height of the tree.
Open the Lock BFS
Implement a BFS solution to find the minimum number of turns needed to open a 4-wheel lock, avoiding a set of deadends.
Minimum Genetic Mutation
Implement a function to compute the minimum number of single-character mutations needed to transform one gene string into another, using a given bank of valid mutations.
Floyd-Warshall: All-Pairs Shortest Paths
Implement the Floyd-Warshall algorithm to find all-pairs shortest path distances in a directed graph with possibly negative weights but no negative cycles.
Jump Game on Graph
Implement a function that determines if you can reach the last node of a directed graph by jumping from node 0 to node n-1 using edges.
Showing 1–12 of 12 challenges · medium · Graphs & Graph Algorithms
Graphs & Graph Algorithms — Python coding challenges
What you will find here
This page lists graphs & graph algorithms challenges — real Python problems you solve in the browser IDE with instant test feedback. Each challenge includes a clear brief, starter code, and automated checks.
Challenges vs tutorials and quizzes
Challenges test what you can build under constraints. For guided teaching, use our Python tutorials. For quick checks, try quizzes or copy snippets from code samples.