Re: English versus German



LEE Sau Dan wrote:
"Helmut" == Helmut Wollmersdorfer <helmut@xxxxxxxxxxxxxxxxx> writes:

>> Did you learn the following in that course?

>> 1) Quick sort, and its worst case behaviour; 2) Hash tables, and
>> how to design good hash functions; 3) Self-balancing binary
>> search trees, e.g. AVL, red-black trees; 4) Recursion, and
>> tail-recursion; 5) Pointers (or references); 6) Dynamic
>> programming; 7) Why comparison-based sorting algorithms cannot do
>> better than o(n log n)?

Helmut> An application programmer does not need to know this topics,
Helmut> except 4) and 5).

Helmut> Most of your list are algorithms still implemented in an
Helmut> installable library. There is no need to reinvent the wheel.

You don't need to reinvent the wheel. There are many wheels ready to
use. But it helps a lot if you know how a wheel works! You do need to
pick the appropriate wheel for your specific application. Choosing the
wrong wheel (e.g. a steel wheel on muddy ground) makes it crawl!

e.g. I have seen CS graduates using an (unsorted) array to implement a
mathematical set (as in set theory), and wondering why his program runs
so slowing when managing sets of millions of integer ids. When I told
him to use a hash table instead, the program ran at least 1000 times
faster.

This indicates that his ignorance lies in what technology is
available, not in how the technology work. Not that I agree
completely with Helmut, but this does not support your argument.

Tak
--
----------------------------------------------------------------+-----
Tak To takto@xxxxxxxxxxxxxx
--------------------------------------------------------------------^^
[taode takto ~{LU5B~}] NB: trim the xx to get my real email addr


.



Relevant Pages

  • Re: English versus German
    ... Helmut> except 4) and 5). ... There is no need to reinvent the wheel. ... him to use a hash table instead, the program ran at least 1000 times ...
    (sci.lang)
  • Re: Bareword errors?
    ... I didn't reinvent this wheel, though, I got it from someone and have ... Have a look at the CGI module - it's ... nonsensical names like %HASH? ...
    (comp.lang.perl.misc)
  • alter_key function for Hash
    ... Of course i am reinventing the wheel, but may be that would be helpful for ... With this method you can replace a key with a new one in a Hash. ... def alter_key ...
    (comp.lang.ruby)
  • Re: Hash salt (was Re: BCRYPT - Why not using it?)
    ... In a serious application, hopefully the wheel ... hash. ... but then we wouldn't see the forest from the ... trees. ...
    (Debian-User)
  • Re: Theory of hash funcs
    ... I want to learn why they're more secure. ... I think you should re-invent the wheel. ... know what makes a hash good, you should have an easy time making a fine hash ... The hash function should be memory-less in the sense that presenting it ...
    (sci.crypt)