全国统一服务热线:400-633-9193

JS数组操作中的经典算法实例讲解

    网络     2017-08-26    1195

冒泡排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script type="text/javascript">
 
 
var arr = [3,7,6,2,1,5];
 
 
定义一个交换使用的中间变量
var temp = 0;
 
for(i=0;i<arr.length;i++){
 
  for(j=0;j<arr.length;j++){
如果下一个元素小于当前元素
    if(arr[j]>arr[j+1]){
互换
      temp = arr[j];
      arr[j] = arr[j+1];
      arr[j+1] = temp;
      }
    }
  }
  for(var i in arr){
      document.write(arr[i]);
      }
 
</script>

数组去重

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<script type="text/javascript">
//老数组
var arr1 = [1,2,2,3,8,6,6,4,5,5];
 
 
//定义新数组
var arr2 = [];
 
for(i=0;i<arr1.length;i++){
   var status = 0;
   for(j=0;j<arr2.length;j++){
     if(arr1[i]==arr2[j]){
     status = 1;
     break;
   }
}
   if(status == 0){
  arr2.push(arr1[i]);
  }
}
for(var x in arr2){ 
  document.write(arr2[x]+"<br>");
  }
 
</script>

数组添加去重

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<script type="text/javascript">
var arr = [3.14,10,4,"hello"];
新定义数组元素
var tj = "hello";
 
布尔型判断
var cf = true;
 
for(var i =0;i<arr.length;i++){
  if(tj == arr[i]){
    cf = false;
    break;
  }
}
if(cf){
  arr.push(tj);
  for(var i in arr){
      document.write(arr[i]+"<br>");
      }
}
else{
  alert("有重复值");
}
 
</script>


  分享到:  
0.2140s