
Seth's Blog: The power of an algorithm - Anon84
http://sethgodin.typepad.com/seths_blog/2009/02/the-power-of-an-algorithm.html
======
mlLK
I'm no Computer Science major, but I've easily wasted a lot of my time
rewriting algorithms for n.

<http://www.cs.iupui.edu/~jschleut/n341/labs/#proto>

It took awhile for me to understand what _O_ -notation really represented
until I found this primer:
<http://www.csc.liv.ac.uk/~ped/teachadmin/algor/algor.html> ; these 5 bullet
cover a lot of ground if you want to approach algorithms head-on, that is
given you don't have a Masters in CSCI, but being of the self-taught taxonomy
I went ahead and tested a few out on my own. . .in my browser. . .where _n_ is
27. . .using 2^ _n_ , which is essentially what a bubble-sort measures out at.

This is a bad algorithm, but I was curious how something like this would look
in a browser. 2^27 = 134 217 728, which is roughly 130 MB. Firefox is willing
and capable of running this while it could even run 2^28 = 268 MB. Anyways,
don't delve too much into the topic, after awhile you'll recurse anything just
to see what it looks like. . .worse than heroin.

~~~
RiderOfGiraffes
It sounds like you're really very confused ...

    
    
      I'm no Computer Science major, but I've easily
      wasted a lot of my time rewriting algorithms for n.
    

I'm not even sure what that means.

    
    
      ... tested a few out on my own ... in my browser ...
      where n is 27. . .using 2^n, which is essentially
      what a bubble-sort measures out at.
    

No, BubbleSort wuns in n^2. The difference is significant.

    
    
      This is a bad algorithm, ...
    

No, it's only bad when the input gets beyond 10 or so, where 10 is not
necessarily equal to 10. This is why O(n) notation is so important, so
understand where the trade-offs occur.

    
    
      2^27 = 134 217 728, which is roughly 130 MB.
    

No, MB is a measure of memory, and you're talking about measuring time.
Further, the exponential example on your web page is not BubbleSort, it's
Fibonacci. That _is_ exponential, but the base isn't 2.

    
    
      Firefox is willing and capable of running this while
      it could even run 2^28 = 268 MB.
    

This is what convinces me that you're very confused about what is happening,
and why. This stuff doesn't need a masters in CSCI or anything else. It's
really very simple. It just sounds to me like you've read some bad tutorials,
and done some irrelevant (although perhaps interesting) exercises, from which
you've learned the wrong lessons.

------
geedee77
Is it just me or did that blog post not really say much? Maybe I'm just
missing something.

