找出重复的元素并排序
题目描述
找出数组 arr 中重复出现过的元素。
代码
1 function duplicates(arr) {
2 //升序排序
3 arr.sort(function(value1 , value2){
4 if(value1 > value2){
5 return 1;
6 }
7 else if(value1 < value2){
8 return -1;
9 }
10 else{
11 return 0;
12 }
13 });
14 var newArr = new Array();
15 var i = 0,j = 0 , k = 0 , num; //num是item出现的次数
16 while(i<arr.length){
17 var item = arr[i];
18 num = 0; //num初始值为0
19 for(k = i+1;k<arr.length ; k++){
20 if(item == arr[k]){
21 num++;
22 }
23 else{
24 break;
25 }
26 }
27 if(num!=0){
28 newArr[j++]=item;
29 }
30 i = k; //i重新定位
31 }
32 return newArr;
33 }
来源:牛客网