請給Array本地物件增加一個原型方法,它用於刪除陣列條目中重複的條目(可能有多個),返回值是一個包含被刪除的重複條目的新陣列。...

weixin_30788239發表於2020-04-05

這是牛客網上的一道題~

題意:遇到重複元素就刪除(留下第一個不重複的即可)。

解題思路:雙迴圈一遍陣列,arr[i] == arr[j] 成立時,刪除 arr[j],並將 arr[j] 直接push到一個新陣列中去。

js程式碼實現:

 

var array1 = [1,2,3,4,5,2,3,1,5,4];
  function del(arr){
    var ret = [];
    for(var i = 0; i < arr.length;i ++){
         for(var j = i+1;j < arr.length;j++){
        if(arr[j] == arr[i])
          ret.push(arr.splice(j,1)[0]); //splice返回一個與引數有關的陣列,splice(j,1)[0] 即為迴圈一次刪除的元素,並將其新增到ret陣列中
      }
    }
      console.log(ret);
  }
  //test
  del(array1);
  //Array [1, 2, 3, 4, 5]

 

  重複元素就成功新增進ret陣列中了~

 

  

 

轉載於:https://www.cnblogs.com/baby-zuji/p/10742960.html

相關文章