title: How to calculate all interleavings of two lists?
body: <p>I want to create a function that takes in two lists, the lists are not guaranteed to be of equal length, and returns all the interleavings between the two lists.</p>
  
  <p><strong>Input:</strong> Two lists that do not have to be equal in size.</p>
  
  <p><strong>Output:</strong> All possible interleavings between the two lists that preserve the original list's order.</p>
  
  <p><strong>Example:</strong> AllInter([1,2],[3,4]) -> [[1,2,3,4], [1,3,2,4], [1,3,4,2], [3,1,2,4], [3,1,4,2], [3,4,1,2]]</p>
  
  <p>I do not want a solution. I want a hint.</p>