title: Data structures - when to use which ones?
body: <p>I am looking to put together a flowchart for determining which data structures are appropriate for a given problem.  The list of data structures are : array, linked list (single/double), hash (maps, etc), trees (binary, N-way), and skip list.</p>
  
  <p>The criteria for choosing a list (from my point of view) are:
          1) bounded or unbounded
          2) random or sequential access
          3) main operation (read, write, insert, delete)
          4) performance
          5) ease of coding</p>
  
  <p>For example, if I know an exact number of items, then generally I will use an array.  They are easy to search (though not necessarily fast) and easy to maintain.</p>
  
  <p>With large amounts of data, I prefer to go with a tree for the traversal times.</p>
  
  <p>I would be interested in finding out others flowcharts for choosing data structures.</p>