第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

找到兩個(gè)數(shù)組之間的對(duì)稱差

找到兩個(gè)數(shù)組之間的對(duì)稱差

九州編程 2021-05-14 18:13:05
我需要找到元素中兩個(gè)數(shù)組之間的任何差異,并將所述元素推到新數(shù)組中,然后最后返回該數(shù)組。我通過搜索從該網(wǎng)站提取了一個(gè)功能,該功能的目的是計(jì)算元素在數(shù)組中出現(xiàn)的次數(shù)并返回該次數(shù)。首先,我將兩個(gè)數(shù)組連接在一起,然后應(yīng)用了此函數(shù)(對(duì)其進(jìn)行了修改以盡可能地適應(yīng)我的問題)。然后,我嘗試將不同的元素(不會(huì)發(fā)生兩次)推到新數(shù)組中。我的代碼當(dāng)然行不通,并且對(duì)Javascript還是陌生的,所以請(qǐng)放輕松。以下是我嘗試過的代碼,未通過任何測(cè)試:function diffArray(arr1, arr2) {  var newArr = [];  let tempArr = arr1.concat(arr2);  function countInArray(array, what) {    var count = 0;    for (var i = 0; i < array.length; i++) {        if (array[i] === what) {            count++;        }    }    if (countInArray(tempArr, tempArr[i]) < 2) {      newArr.push(tempArr[i]);    } }  return newArr;}如果您提供任何代碼,請(qǐng)嘗試為我分解代碼,以便我更好地理解和學(xué)習(xí)。
查看完整描述

3 回答

?
滄海一幻覺

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊

你可以拿一個(gè) Set


該Set對(duì)象允許您存儲(chǔ)任何類型的唯一值,無論是原始值或?qū)ο笠谩?/p>


并從左側(cè)和右側(cè)返回差值。


function getSymDifference(a, b) {

    return getDifference(a, b).concat(getDifference(b, a));

}


function getDifference(a, b) {

    var setB = new Set(b);

    return a.filter(v => !setB.has(v));

}


console.log(getSymDifference(["diorite", "andesite", "grass", "dirt", "pink wool", "dead shrub"], ["diorite", "andesite", "grass", "dirt", "dead shrub"])); // ["pink wool"]

console.log(getSymDifference([1, "calf", 3, "piglet"], [7, "filly"])); // [1, "calf", 3, "piglet", 7, "filly"]

console.log(getSymDifference([], ["snuffleupagus", "cookie monster", "elmo"]));

console.log(getSymDifference([1, 2, 3, 5], [1, 2, 3, 4, 5]));

通過拼接數(shù)組以防止再次使用已訪問或搜索的項(xiàng)目的經(jīng)典方法。


function getSymDifference(a, b) {

    var aa = a.slice(),

        bb = b.slice(),

        result = [],

        i, j;


    for (i = 0; i < aa.length; i++) {

        j = bb.indexOf(aa[i]);

        if (j === -1) {

            result.push(aa[i]);

        } else {

            bb.splice(j, 1);

        }

    }

    return result.concat(bb);

}


console.log(getSymDifference(["diorite", "andesite", "grass", "dirt", "pink wool", "dead shrub"], ["diorite", "andesite", "grass", "dirt", "dead shrub"])); // ["pink wool"]

console.log(getSymDifference([1, "calf", 3, "piglet"], [7, "filly"])); // [1, "calf", 3, "piglet", 7, "filly"]

console.log(getSymDifference([], ["snuffleupagus", "cookie monster", "elmo"]));

console.log(getSymDifference([1, 2, 3, 5], [1, 2, 3, 4, 5]));

.as-console-wrapper { max-height: 100% !important; top: 0; }


查看完整回答
反對(duì) 回復(fù) 2021-05-27
  • 3 回答
  • 0 關(guān)注
  • 220 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)