Skip to content

Instantly share code, notes, and snippets.

@jtarleton
Created July 23, 2013 15:09
Show Gist options
  • Save jtarleton/6063129 to your computer and use it in GitHub Desktop.
Save jtarleton/6063129 to your computer and use it in GitHub Desktop.
Finds the intersection of two arrays in a simple fashion.
/**
* finds the intersection of
* two arrays in a simple fashion.
*
* PARAMS
* @param a - first array, must already be sorted
* @param b - second array, must already be sorted
*
* NOTES
*
* Should have O(n) operations, where n is
* n = MIN(a.length(), b.length())
*/
function intersect_safe(a, b)
{
var ai=0, bi=0;
var result = new Array();
while( ai < a.length && bi < b.length )
{
if (a[ai] < b[bi] ){ ai++; }
else if (a[ai] > b[bi] ){ bi++; }
else /* they're equal */
{
result.push(a[ai]);
ai++;
bi++;
}
}
return result;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment