您的位置:首页 > Web前端 > JavaScript

冒泡排序,数组去重

2018-01-23 16:40 120 查看
好久没写博客了,

今天终于抽出时间来更新了

,那就讲一下JS中的排序和去重吧。

冒泡排序,数组去重

一:冒泡排序的原理就是利用双层for 循环:

外层循环负责最小最大数
内层循环负责两两比较

var arrs=[6,8,4,2,1,5,3,7];
for(var i=0;i<arrs.length-1;i++){
for(var j=0;j<arrs.length-1;j++){
if(arrs[j]>arrs[j+1]){//比较第j个数和第j+1数,如果发现后面的数比其它数小,则两两交换;
var temp=arrs[j];//在交换位置时,先把最小的数保存一下,因为在给第j+1个数赋值时,j的值已经改变了
arrs[j]=arrs[j+1]
arrs[j+1]=temp
}
}
}
console.log(arrs)//12345678
二:数组去重(利用indexOf()方法)
var arr=[1,2,3,3,4,5,5,6,7]
var temp=[];//用于放去重后的数组
for(var i=0;i<arr.length;i++){
if(temp.indexOf(arr[i])==-1){
temp.push(arr[i])
}
}
console.log(temp)
三:字符串去重(利用indexOf()方法)
var str='ahuheaehiv';
temp='';//用于放去重后的字符串
for(var i=0;i<str.length;i++){
if(temp.indexOf(str.charAt(i))==-1){
temp+=str.charAt(i);//temp=temp+str.charAt(i)
};
};
console.log(temp)
四:在补充一下es6中数组的去重方法


var arr=[1,2,3,3,4,5,5,6,7]
var newArr=Array.from(new Set(arr))
console.log(newArr)
继续奋战去了,拜拜~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript