Does EM-algorithm only work with missing data? If not, what is the idea to assume that we have missing data?
I think the Wikipedia for EM algorithm has everything you want and it probably explains better than I do. You can also use the EM algorithm for latent variables; no missing data but variables that you can't observe and measure. The idea of the algorithm is to iteratively adjust your missing data/latent variables until your maximum likelihood estimate converges.