返回兩個陣列中非相同的元素

2021-08-29 19:05:32 字數 580 閱讀 9810

csdn上又有個網友提這樣的問題,看來這個問題很多時候都會碰到。如下

var a=['1','2','3','4']

var b=['1','2']

如何比較才能得到陣列c=['3','4']

基本的演算法就是挨個比較兩個陣列的元素,把不同的跳出來單獨放到乙個陣列裡,最後返回該陣列。

其實陣列元素如果是基本型別(number,string,boolean)的很好比較,但如果是物件型別就麻煩一些,js物件的比較見

array.prototype.contains = function(obj) 						

}else

}

} return boo;

}function filter(a1, a2)

} return boo;

} for(var i=0;ireturn myary;

}var a=['1','2','3','4'] ;

var b=['1','2'] ;

var c = filter(a,b);

alert(c);//輸出["3","4"]

查詢兩個陣列相同元素

攢rp ing 一場面試的一道演算法題,題目如下 有兩個公升序的陣列,在這兩個陣列裡面有且只有乙個相同的元素,考慮時間和空間複雜度,找到該元素,禁用js中所有方法,單純演算法題 emmmmm,為何和我之前的不一樣 話不多說,上 我真是越來越喜歡動手敲一下了 function foo arr 1,ar...

兩個 陣列,需要挑出相同的元素

一般的 首先肯定會想到 這樣的程式 for int i 0 ifor int j 0 i.但是這裡需要注意的就是 這個方法需要迴圈 m n 次才可以 完成此任務。所以考慮使用雜湊表的方法,將乙個陣列裝入雜湊表中,然後判斷另乙個陣列是否存在表內即可。這種方法的迴圈次數是m n.例如 public st...

C 取兩個陣列的相同元素

以往我們都是肯定絞盡腦汁,肯定什麼迴圈,元素大小,什麼因素都考慮進去。但是現在採用linq可以很好的解決這個問題。找出兩個或多個陣列的相同項。相當簡單 using system using system.collections.generic using system.linq using syst...