Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

List of fundamental data structures - what am I missing? [closed]

I've been studying my fundamental data structures a bunch recently, trying to make sure I've got them down cold.

By "fundamental", I mean the real basic ones. Fancy ones like Red-Black Trees and Bloom Filters are clearly worth knowing, but they're usually either enhancements of fundamental ones (Red-Black Trees are binary search trees with special properties to keep them balanced) or they're only useful in very specific situations (Bloom Filters).

So far, I'm "fluent" in the following data structures:

  • Arrays
  • Linked Lists
  • Stacks/Queues
  • Binary Search Trees
  • Heaps/Priority Queues
  • Hash Tables

However, I feel like I'm missing something. Are there any fundamental ones that I'm forgetting about?

EDIT: Added these after posting the question

  • Strings (suggested by catchmeifyoutry)
  • Sets (suggested by Peter)
  • Graphs (suggested by Nick D and aJ)
  • B-Trees (Suggested by tloach)
    • I'm a little on-the-fence about whether these are too fancy or not, but I think they're different enough from the fundamental structures (and important enough) to be worth studying as fundamental.
like image 466
jakeboxer Avatar asked Dec 07 '09 16:12

jakeboxer


2 Answers

Sets

As a principle I never say try [anySearhEngine] on it, but you can checkout this list : http://en.wikipedia.org/wiki/List_of_data_structures

like image 197
Peter Avatar answered Oct 25 '22 10:10

Peter


Also the Graph data structure is fundamental.

like image 29
Nick Dandoulakis Avatar answered Oct 25 '22 08:10

Nick Dandoulakis