I apologize for the self promotion, but some people told me they immediately grasped the Havel-Hakimi Algorithm by solving this puzzle I made: http://jacquerie.github.io/hh/
Although just reading the description, I do have one question: What is a "degree sequence"? I going to go ahead and assume that it's https://en.wikipedia.org/wiki/Degree_(graph_theory)#Degree_s.... If that's correct, I'd encourage you to add a hyperlink to the term "degree sequence" with that URL, for people like me with zero background in graph theory.
That challenge is always to prove for definite that it will always work. The proof is in, well, the proof.