The Best Algorithms of the 20th Century [pdf]
1–10 of 23 posts
Re: The Best Algorithms of the 20th Century [pdf]
#2For more on #7 (Quicksort), I especially recommend Hoare's paper in the Computer Journal, which explains many details about the algorithm that are unfortunately not widely known (such as the correct way to partition for Quicksort): http://comjnl.oxfordjournals.org/content/5/1/10.abstract (the full text is freely downloadable).
Re: The Best Algorithms of the 20th Century [pdf]
#3Re: The Best Algorithms of the 20th Century [pdf]
#4Khawrazmi was a Persian Muslim. I stopped reading right there.
Re: The Best Algorithms of the 20th Century [pdf]
#5Khawrazmi was a Persian Muslim. I stopped reading right there.
Re: The Best Algorithms of the 20th Century [pdf]
#6Another algorithm is Dantzig's simplex algorithm for linear programming: It is basically just elementary row operations much as in Gauss elimination on a, usually, vastly 'under determined' system of linear equations. The math for the simplex algorithm is mostly nicely presented via matrix theory.
A third algorithm in the list is the QR algorithm for finding eigenvalues.
So, of the 10 algorithms, at least three are closely related to just matrix theory. Amazing.
Then, for computer science I would add an observation: A few days ago a venture firm principal asked me about my project, "So you have an algorithm?". I had to respond, "Well, yes, but by itself an algorithm doesn't have much to recommend it and, thus, doesn't mean much.".
Well, this list of 10 algorithms supports my observation: For a problem as complicated as those solved by the 10 algorithms in the list, an algorithm by itself doesn't mean much, really doesn't mean anything. Instead, to take any such algorithm seriously, we need something we can take seriously and logically prior to the algorithm.
Well, as in the 10 algorithms, what is prior is just some applied math, typically with theorems and proofs. Then due to the theorems and proofs, we take the applied math seriously. Then we take the algorithm seriously because and only because it is a careful implementation of the data manipulations in the applied math. So, net, what is really crucial for such an algorithm is the logically prior applied math.
Of course, at times we can proceed without any prior applied math and work just with an algorithm that we got, say, from just heuristics. Then we may be able to take the algorithms seriously after a lot of empirical testing.
So, here's my point: For reasonably complicated problems, the key is some applied math, and we take a corresponding algorithm seriously only because of the logically prior applied math.
Or, computer science: The most important work with algorithms is work with logically prior applied math complete with theorems and proofs. Work with algorithms without such prior applied math is close to hopeless.
Venture firms and limited partners: If an entrepreneur has some crucial, core 'secret sauce' in running code that can be called an 'algorithm', what is crucial (prior to already having a financially successful company based on that code) is the corresponding applied math, not the 'algorithm' and not just the code.
Information technology entrepreneurs: If your business is trying to solve a serious problem with an algorithms and some corresponding code, then don't start with the algorithm and, instead, start with some applied math.
Computer science students: If you want to do good work with algorithms, study appropriate topics in a math department, not 'algorithms' in a computer science department.
Computer science professors: Algorithms are crucial to your field, but your approach to algorithms skipping prior applied math complete with theorems and proofs is bankrupt, with no good reason to take any such algorithm seriously, and will lead to a long walk on a short pier and blocked progress for your field. What's just crucial for your interest in algorithms is in the math department and not in your department. Sorry 'bout that!
Re: The Best Algorithms of the 20th Century [pdf]
#7Khawrazmi was a Persian Muslim. I stopped reading right there.
What does religion have to do with algorithms?!
Re: The Best Algorithms of the 20th Century [pdf]
#8Hmm, let's see: One of the algorithms is the fast Fourier transform (FFT). It is sometimes described as a form of matrix factorization and multiplication. Another algorithm is Dantzig's simplex algorithm for linear programming: It is basically just elementary row operations much as in Gauss elimination on a, usually, vastly 'under determined' system of linear equations. The math for the simplex algorithm is mostly ni…
It would hardly be difficult to make a very long list of pure CS algorithms and data structures that could stand head to head against the likes of the multipole method in both industrial application and scientific value.
Your knowledge of computer science is evidently shallow. Educate yourself and you might think twice before making such ignorant pronouncements.
Re: The Best Algorithms of the 20th Century [pdf]
#9Khawrazmi was a Persian Muslim. I stopped reading right there.
What does religion have to do with algorithms?!
Same thing is going on here. The article says al-Khwarizmi was an Arab. He was actually a Persian who followed the Arab religion (Islam), which probably explains the Arab-appearing aspects of his life and work.
Does it matter if he was Arab or Persian? Some might argue that all that matters is what he discovered. The counter argument is that by mentioning things like nationality, ethnicity, religion, etc., in these kind of articles, it helps reinforce the idea that science transcends national borders, ethnic boundaries, religion, and so on. I believe I read something by Asimov once where he said that was the reason he always included the nationality of scientists he wrote about.
Re: The Best Algorithms of the 20th Century [pdf]
#10Earlier quoted context omitted.
What does religion have to do with algorithms?!
The article's statement in the second sentence that al-Khwarizmi was an Arab is an error. The person you're responding to was almost certainly not being bigoted, he was reacting to a factual error in the introductory paragraph of the article.