It's a broad topic. But if you want to have a general introduction about sitemaps including HTML sitemaps, XML sitemaps etc. I can suggest this sitemaps comparison article that has explanations and code examples of all kinds.
As for as I Know Sitemaps are created for the representation of almost all pages of your site in a sequenced or Hierarical Manner.These are Basically created for Search Engines but Sometimes it is useful for user also.