4 ms·
“Dijkstra is Wrong and So am I” – an argument against 0-based arrays
- kuwze 8y agohttps://i.imgur.com/CMk6jZY.jpg https://i.imgur.com/CMk6jZY.jpg
- Gibbon1 8y agoThis is the right answer, In addition I think a CS degree teaches you to how to write algorithms and work experience teaches you to not. And modern practice teaches you to avoid monkeying with array indexes when possible.
- nabla9 8y agoDijkstra is right and so were you once. 0 or 1 based arrays is not a fundamental issue. It's more like little endian vs little endian. It's marginally better if everyone settles for one indexing. In a good high level language and programming style you rarely need to think in indexes. In a low level language 0-indexing is better.
- ComputerGuru 8y agoIn low-level languages, an index is literally a pointer offset. p[n] is *(p+n), and 0 makes sense. In higher-level languages, it's a less direct dereference that may or may not be directly mapped in a similar fashion. Since there's a real basis for 0-indexing and none for 1-indexing, obviously 0 is right.
- throwaway5250 8y agoThose who do not understand Dijkstra are doomed to revinvent him. There are plausible, though inferior, arguments for 1-based arrays. This person doesn't even manage to make them, though.