Kruskal's algorithm is a greedy algorithm used to find the minimum spanning tree or forest of an undirected edge-weighted graph. It was first published in 1956 by Joseph Kruskal and has since been rediscovered by other researchers. Other algorithms for this problem include Prim's, reverse-delete, and Borůvka's algorithms.

This is an introductory course to computer science theory, exploring the design and analysis of various algorithms, number theory, and complexity. The prerequisites include familiarity with mathematical induction, big-O notation, basic data structures, and programming in a standard language.