Expectation-Maximization (EM) is an iterative algorithm used for finding maximum likelihood estimates of parameters in statistical models, particularly when the data is incomplete or has hidden variables. It alternates between evaluating the expected value of the log-likelihood (E-step) and maximizing this expectation (M-step), improving parameter estimates iteratively until convergence.