Asked By : soandos
Answered By : Realz Slaw
Thus, unless I am a library maintainer/implementer of some sort, do I need to know anything about these algorithms.
Chances are, if you make any interesting programs, you are going to find it useful to design some algorithms and data structures. Sometimes, the most effective optimizations cannot beat a simple change in methodology or representation. Unless the algorithm you require/design is useful to a wider audience, it can sometimes be difficult to package it as a useful library. Perhaps you will find that something you made can be useful, and will publish it (github is chock full of these projects). Therefore, I think that if you program long enough, you will become a “library maintainer/implementer of some sort”, even if you are the only one using it, for lack of publicity. Bottom line: I don’t think libraries like STL and Boost are making knowing algorithms less important at all; rather they are making more advanced algorithms within reach. While libraries such as these can sometimes make knowledge of their algorithms unnecessary for small programs, in practice it can important to know if you intend to design anything complex.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/16051 Ask a Question Download Related Notes/Documents