Accidental Technologist

Musings about Entrepreneurship, Technology and Software Development

  • Home
  • About
  • Still River Software
  • Privacy Policy

Powered by Genesis

You are here: Home / Technology / Algorithms

Algorithms

November 19, 2012 by Rob Bazinet Leave a Comment

Tweet

Daie algorithms I came across a great book on Algorithms?based on a course taught at Berkeley and U.C. San Diego and wanted to share with readers. ?As a computer scientist, Algorithms are one of the most fundamental elements of our trade.

Playing on the strengths of our students (shared by most of today’s undergraduates in?Computer Science), instead of dwelling on formal proofs we distilled in each case the crisp?mathematical idea that makes the algorithm work. In other words, we emphasized rigor over?formalism. We found that our students were much more receptive to mathematical rigor of?this form. It is this progression of crisp ideas that helps weave the story. Once you think about Algorithms in this way, it makes sense to start at the historical beginning?of it all, where, in addition, the characters are familiar and the contrasts dramatic:?numbers, primality, and factoring. This is the subject of Part I of the book, which also includes?the RSA crypto system, and divide-and conquer algorithms for integer multiplication,?sorting and median nding, as well as the fast Fourier transform. There are three other parts:?Part II, the most traditional section of the book, concentrates on data structures and graphs;?the contrast here is between the intricate structure of the underlying problems and the short?and crisp pieces of pseudocode that solve them. Instructors wishing to teach a more traditional?course can simply start with Part II, which is self contained (following the prologue),?and then cover Part I as required. In Parts I and II we introduced certain techniques (such?as greedy and divide-and-conquer) which work for special kinds of problems; Part III deals?with the ?sledgehammers? of the trade, techniques that are powerful and general: dynamic?programming (a novel approach helps clarify this traditional stumbling block for students)?and linear programming (a clean and intuitive treatment of the simplex algorithm, duality,?and reductions to the basic problem). The nap Part IV is about ways of dealing with hard?problems: NP-completeness, various heuristics, as well as quantum algorithms, perhaps the?most advanced and modern topic. As it happens, we end the story exactly where we started?it, with Shor’s quantum algorithm for factoring.

The examples are fantastic and very inclusive, ranging from Fibonacci and sorting to graphs, NP-completeness and Quantum algorithms. ?The book is 336 pages and has something for everyone. There’s a lot of math combined with some fine pseudo-code but don’t be dissuaded. Lots to learn, ponder and apply. ??Enjoy!

Share this:

  • LinkedIn
  • Twitter
  • Facebook
  • Email
  • More
  • Pinterest
  • Tumblr
  • Pocket
  • Reddit

Related

Filed Under: Technology

Care about your privacy? I do and use Fathom Analytics on this site.

Fathom Analytics

Recent Posts

  • Status Bar in iTerm2
  • Supporting Multiple SSH Keys on macOS
  • Using the Microsoft Ergonomic Keyboard on macOS
  • 10 Steps to Survive Working from Home
  • “Are you building a business or learning a stack?”

Categories

Services I Love

HatchBox - Easy Rails Deploys Fathom Analytics
Follow @rbazinet

Rob Bazinet
@rbazinet

  • I unsubscribe from blogs that only show me a tiny part of the post and force me to visit the site.
    about 1 week ago
  • If anyone is looking for a seasoned .NET, C# and https://t.co/q7WzxhZnCZ developer, a good friend of mine has some… https://t.co/5DqXtCzySr
    about 2 weeks ago
  • Slack is down…2021 is looking up already.
    about 3 weeks ago
  • Subscribe to Locally Sourced by Noel Rappin by @noelrap https://t.co/yZnXfg2tU5
    about 1 month ago
  • So true! https://t.co/6axDZAHASZ
    about 1 month ago
  • RSS - Posts
  • RSS - Comments
loading Cancel
Post was not sent - check your email addresses!
Email check failed, please try again
Sorry, your blog cannot share posts by email.