Dicci cosa sta succedendo
**Il tuo codice fino ad ora**
function sym(arr)
{
var arr = Array.from(arguments);
//console.log(arr)
let temp =[]
let SizeFirstArray = arr[arr.length-2].length
temp = arr[arr.length-2].concat(arr[arr.length-1]) //unisco i due vettori
arr[arr.length-2]=temp //sostituisco penultimo
arr.pop() //rimuovo ultimo
temp = [];
for (let i=0;i<SizeFirstArray; i++) //scorro per eliminare doppi
{ //solo primi n confrontati con secondi n
for (let j=SizeFirstArray;j<arr[arr.length-1].length; j++)
{
if(arr[arr.length-1][i]===arr[arr.length-1][j]) //se sono uguali
{
if (temp.indexOf(i)==-1) temp.push(i); //segno indici
if (temp.indexOf(j)==-1) temp.push(j);
}
}
}
temp.sort()
for (let i=temp.length-1; i>=0; i--) //rimuovo doppi da arr finale
{
arr[arr.length-1].splice(temp[i], 1);
}
arr[arr.length-1].sort()
temp = [...new Set(arr[arr.length-1])] //rimuovo ultimi duplicati (se i duplicati erano nello stesso vettore)
arr[arr.length-1]=temp
if (arr.length>1)
sym(...arr) //ricorsione. faccio differenza ultimi due e si riparte. i tre punti passano da vettore a lista argomenti
else
{
console.log(arr[0])
console.log(arr[0].length)
return arr[0]
}
}
sym([1, 2, 5], [2, 3, 5], [3, 4, 5])
**Informazioni del tuo browser:**
Lo user agent è: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0
Sfida: Find the Symmetric Difference
Link alla sfida: