Shortcut for chapter specific information

Tuesday, May 17, 2011

Why go deep in algorithm?

I had thought about this for long time and in fact try to experience what the best way is in my career.

It takes a long time to solve problems in any of the algorithm books.   CLRS is perhaps the simplest.  With the textbook and some college level of math, one can pretty much solve most of the problems and allow one to read on and on.

Difficulty of the problems aside, does it worth it? Does it worth it to go deep at all?   If some algorithms will never being used, why are we learning them at all?

To me, the answer lies on the intelligent patterns which I learned from every algorithms and multiple perspectives offered from looking at each algorithms individually.  It helps me a lot to solve new problems as well. 

Besides, in real work, there are many beings closed to so called "script-kiddies" exist, what they do everyday is to program and patch the code from time to time if the original solution doesn't work.    I was one of them.  It doesn't seem me a smart thing to do and it give me great deal of embarrasment.

So I have no doubt a serious programmer should study at least one of the bibles - CLRS, Sedgewick or TAOCP.  Preferably all of them but if one can learn from either one of them, I believe the programmer has genuinely upgraded.

The question is what is a reasonable amount to finish just one book?  This is one thing I thought it through - if I decided to stay in the business which relates to computer, regardless of whether it is research, development, management or whatever.  To make sure I made the best decision, data structure and algorithm is a must.  So even if it takes 6 years to finish one book, I believe it's totally worth it.  (Of course, it will be nice if I can somehow accelerate the process a bit.)

No comments:

Post a Comment