The Dasgupta algorithms book is great. I read through it on my own a few years ago. Much easier to follow than CLRS (and much more manageable in size, though it obviously leaves out a lot of the stuff they cover). It strikes a good balance between rigor and clarity. Also has one of the better explanations of dynamic programming that I've seen if I remember correctly.
Also recommended in this reply