找出数组 中只出现一次的 元素 多种写法

2023-02-09  本文已影响0人  c0c9c7f261e8


function SingleNumber1(nums){

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

   { 

       let c=JSON.parse(JSON.stringify(nums))

       c.splice(i,1)

       if(!c.includes(nums[i])){

           console.log(nums[i],i);

           return nums[i]

       }

    }

}

function getSingle2(arr) {

   let newList=[]

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

   if(arr.indexOf(arr[i])==arr.lastIndexOf(arr[i])){

       newList.push( arr[i])

    }

  }

 console.log(newList)

}

unction getSingle3(arr){

   let c=null

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

       let b=0;

      for(let j = 0; j < arr.length; j++) {

         if(arr[i]==arr[j]){

              c=arr[i];

              b++;

              if(b==2){

                  c=null

                   continue

              }

         }

       }

         if(b==1){

              console.log(c)

              break

         }

    }

}

function getSingle4(arr){

  let map=new Map()

   for(let i in arr){

       if(!map[arr[i]]){

           map[arr[i]]=1

       }else{

           map[arr[i]]++

       }

    }

   for(let i in map){

       if(map[i]==1){

           console.log(i)

       }

    }

}

function getSingle5(arr) {

   console.time("test")

  let counts={}

   for (let num of arr) {

     counts[num] = counts[num] ? counts[num] + 1 : 1;

    }

    for (let num in counts) {

     if(counts[num]==1){

         console.log(counts[num])

         break

     }

    }

    console.timeEnd("test")

}

const arr = [1,3,2,4, 3, 2, 2, 1,11,11];

上一篇 下一篇

猜你喜欢

热点阅读