1苟穆、最簡單的辦法進(jìn)行遍歷排序:
兩個(gè)for循環(huán)遍歷,執(zhí)行次數(shù)最多筛欢,效率較低
let var1 = [ 1, 2, 3 ]
let var2 = [ 2, 3, 4 ]
let list = [ ]
for ( let i = 1; i < var1.length; i++ ){
????for ( let j = 1; j < var2.length; j++ ){
? ? ? ? if (var1[ i ] === var2 [ j ]) list.push( var1[ i ] )
????}
}
如果要求不能重復(fù)元素:在push前indexof判斷是否存在
2、歸并排序
對(duì)兩個(gè)數(shù)組分別進(jìn)行sort排序,然后判斷兩個(gè)數(shù)組中的大小,小的那個(gè)++,如果兩個(gè)數(shù)組值一樣,加入新的數(shù)組
let var1 = [ 1, 2, 3 ]
let var2 = [ 2, 3, 4 ]
var1.sort()
var2.sort()
let list = [ ]
let i = 0, j = 0
while( i? <? arr1.length? &&? j? <? arr2.length ) {
????if( arr1[i]? ===? arr2[j] ) {
????????list.add( arr1[i] )
????????i++
? ????? j++
????}
????else if ( arr1[i]? <? arr2[j] ) i++
????else j++
}