Hello everyone. I am new here and I am sorry if a topic like this has already been posted, but I am taking a graduate level course in Design and Analysis of Algorithms this semester and I pulled a real hard ass of a professor, the kind you pray you don’t get for a class like Algorithms but which if you are unlucky enough to get it will be in just such a course. The good thing is that, unlike one of the first professors I tried taking my undergraduate level course in Algorithms with, who was also a real hard ass and I had to drop the class with in favor of another professor teaching the course, this guy has been teaching for quite sometime and knows how to lecture effectively and keep it as simple as possible while still getting the idea across to students. The guy I tried taking that undergraduate level Algorithms class with was like 27 and already teaching at a major university as a Computer Science professor with a PhD, but had like 1 year of experience teaching so he really hadn’t figured out by that time how best to teach students and the book he chose for the course absolutely bit ass. Hasn’t “Introduction to Algorithms” by Cormen, Leiserson, Rivest, and Stein been like the defacto text to teach out of for both undergraduate and graduate level Algorithms courses at universities for some time now? Anyhow, I was wondering if some of you guys could direct me to some really good resources when it comes to learning not only how best to studying algorithms that are already out there, but how best to approach the problem of coming up with algorithms of your own, showing with a iron clad proof that they will work in all cases, and showing that they will work optimally in every case as well. I am fairly good at studying and learning algorithms that are already out there but I am very much lacking when it comes to taking one I have come up with for solving some problem and showing that will work in all cases and do so optimally every time as well. I know this forum is a good place to come for help with things like this, and there are other forums I plan on going to online as well asking the same questions about how best to approach this stuff in general. I am also going to read various articles online and text written by computer scientists, my books of course such as the text for this class and Knuth’s books, and I will even get on youtube as you can actually find some fairly good videos tutoring people in all kinds of things which had never occurred to me until recently. I even found some videos on there not too long ago showing how to derive Maxwell’s Equations for Electromagnetism. Pretty cool in fact. But, anyhow, if some of you could help me out with advice from your own experience on how best to approach learning how to prove out your own algorithms and how best to better learn ones currently in use that you may not understand 100% and direct me to some other really good resources both on and offline for that kind of stuff I would appreciate it. Thanks in advance for all of your help.