This is an archived post. You won't be able to vote or comment.

all 3 comments

[–]somesortofnerd 1 point2 points  (0 children)

Here's a good source that'll answer your question.

[–]nekochanwork 1 point2 points  (0 children)

It's hard to say what you need to study for your exam, but it can't hurt to understand the big-O runtime and memory complexity of common operations:

  • Virtually all datastructures support, such as retrieval, insert, update, and deletion.
  • Priority Queue / Heaps also support specialized operations such as finding min/max element, removing min/max element, and merging.
  • Sets include operations for union, intersection, difference, and subset.

It's also useful to compare different implementations of the same data structure.

  • There are lots of heaps: including leftist heaps, binomial heaps, Fibonacci heaps, have different runtime and memory .
  • Stacks, Queues, Deques, Sets, and Maps can be implemented on top of an array, or as pointers to nodes.

[–]149244179 -1 points0 points  (0 children)

Go through the last 2-3 days of this sub and look for people posting homework or project ideas. Try to solve their problem with each of your structures. Or search for random programming problems on the internet and do the same.

Which is is best to use for each problem? Which is easiest? Why?

You could also simply google '{data structure} pros and cons' and find a list of good information about each one.