JS 冒泡排序 去重

 1 <script>
 2     //排序
 3     var arr = [3, 3, 7, 8, 1, 8, 9, 2, 4, 3, 3];
 4     for(var i = 0; i < arr.length; i++) {
 5         for(var j = i + 1; j < arr.length; j++) {
 6             if(arr[i] > arr[j]) {
 7                 var temp;
 8                 temp = arr[i];
 9                 arr[i] = arr[j];
10                 arr[j] = temp;
11             }
12         }
13     }
14 //        for(var x in arr)
15 //        {
16 //            alert(arr[x]);
17 //        }
18 //去重         排序之后arr = [1,2,3,3,3,3,4,7,8,8,9]
19 
20     var arr2 = [];
21     for(var i = 0; i < arr.length; i++) {
22         if(arr[i] != arr2[arr2.length - 1]) {     

//因为这个地方是arr2.length-1 代表的是和上一个进入arr2的数比较是否重复,所以必 //先进行冒泡排序,在进行去重,否则的话,像[2,2,4,6,6]这样的可以去重输出的是2,4,6 //但是像[2,3,3,4,3,2]这样的就会输出2,3,4,3,2 25 arr2.push(arr[i]); 26 } 27 } 28 for(var x in arr2) { 29 alert(arr2[x]); 30 } 31 </script>
原文地址:https://www.cnblogs.com/klose11/p/6727111.html