title: Merging/Compressing list of arbitrary integer
body: <p>I'm looking for an algorithm to merge/compress lists of unsorted integers in to a single list while maintaining the original lists.</p>
  
  <p>Example</p>
  
  <pre><code>A = [1, 1, 3]  
  B = [3, 2, 9]  
  C = [1, 3, 2]  
  D = [1]
  
          A C  
          | |  
  Result[ 1 1 3 2 9 ]  
          |   |  
          D   B  
  </code></pre>
  
  <p>I found lots of results with similar questions but most of them deal with sorted lists or break them up. I'm sure something like this exists but I simply don't know the correct terminology.</p>