Good data (and program) structures are definitely quite important. Well chosen structures make implementation much easier (and likewise bad structure makes things needlessly difficult).
Also, the film editing example is also an example of a piece table, which makes cutting very simple. Cutting out a section is just a node insertion + update the end of the original node ({0-3} -> {0-1}, {2-3}).
I feel like this is overlooked far too often. I rarely see anyone use data structures outside of (array) list and hash table and any attempt to use something descriptive of the problem is often shot down because of “familiarity,” which is sort of self-fulfilling.
I get away with flagging lists which should be sets, though.
Good data (and program) structures are definitely quite important. Well chosen structures make implementation much easier (and likewise bad structure makes things needlessly difficult).
Also, the film editing example is also an example of a piece table, which makes cutting very simple. Cutting out a section is just a node insertion + update the end of the original node ({0-3} -> {0-1}, {2-3}).
I feel like this is overlooked far too often. I rarely see anyone use data structures outside of (array) list and hash table and any attempt to use something descriptive of the problem is often shot down because of “familiarity,” which is sort of self-fulfilling.
I get away with flagging lists which should be sets, though.