Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. var findCommonElements= function(arrs) {
  2. var resArr = [];
  3. for (var i = arrs[0].length - 1; i > 0; i--) {
  4.  
  5.  
  6. for (var j = arrs.length - 1; j > 0; j--) {
  7. if (arrs[j].indexOf(arrs[0][i]) == -1) {
  8. break;
  9. }
  10. }
  11.  
  12. if (j === 0) {
  13. resArr.push(arrs[0][i]);
  14. }
  15.  
  16.  
  17. }
  18. return resArr;
  19. }
  20.  
  21. var arrays = [
  22. [1, 4, 6, 78, 8, 9, 124, 44],
  23. [44, 6, 9],
  24. [124, 44, 16, 9]
  25. ]
  26.  
  27. findCommonElements( arrays )
  28. [44, 9]
  29.  
  30. var findCommonElements= function(arrs) {
  31. var nArrs = arrs.length;
  32. var aLen = arrs.map(function(arr) { return arr.length; });
  33. var minLen = Math.min.apply(null, aLen);
  34. for (var k = 0; k < nArrs && aLen[k] > minLen; k++) ;
  35. var sample = arrs[k];
  36. var resArr = [];
  37. for (var n = sample.length, i = 0; i < n; i++) {
  38. if (i == k) continue;
  39. var val = sample[i]; // the current element
  40. for (var j = 0; j < nArrs && j == k || arrs[j].indexOf(val) >= 0; j++) ;
  41. if (j == nArrs) resArr.push(val);
  42. }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement