Your explanations were excellent. I especially liked the way you introduced hash tables using a simple array where the indices had special meaning.
The diagrams are clear and helpful.
Only nitpick: not sure how somebody who is supposed to learn what an array is by reading this is supposed to already know the meaning of Big O notation. So maybe a little intro to Big O complexity somewhere in there would help as well.