title: Queue-like data structure with fast search and insertion
body: <p>I need a datastructure with the following properties:</p>
  
  <ol>
  <li>It contains integer numbers.</li>
  <li>Duplicates aren't allowed (that is, it stores at most one of any integer).</li>
  <li>After it reaches the maximal size the first element is removed.
  So if the capacity is 3, then this is how it would look when putting in it sequential numbers:
  {}, {1}, {1, 2}, {1, 2, 3}, {2, 3, 4}, {3, 4, 5} etc.</li>
  <li>Only two operations are needed: inserting a number into this container (INSERT) and checking if the number is already in the container (EXISTS).
  The number of EXISTS operations is expected to be approximately 2 * number of INSERT operations.</li>
  <li>I need these operations to be as fast as possible.</li>
  </ol>
  
  <p>What would be the fastest data structure or combination of data structures for this scenario?</p>