一、sort方法对数组排序
1 var abc = [4, 45, 1, 2, 5, 55, 441, 11, 11]; 2 abc.sort(function(a, b) { 3 return a - b; 4 }) 5 console.log(abc) //[1, 2, 4, 5, 11, 11, 45, 55, 441]
1 var abc = [4, 45, 1, 2, 5, 55, 441, 11, 11]; 2 abc.sort(function(a, b) { 3 return b-a; 4 }) 5 console.log(abc) //[441, 55, 45, 11, 11, 5, 4, 2, 1]
二、冒泡排序
含义:依次对数组中相邻数字进行比较(两两比较),大的放后面
1 var arr=[1,5,4,2,10,8,8,20,15,14,12]; 2 function minArr(arr){ 3 var temp=null; //定义一个存储元素值得存储器 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 temp=arr[i]; 8 arr[i]=arr[j]; 9 arr[j]=temp; 10 } 11 } 12 } 13 console.log(arr); //[1, 2, 4, 5, 8, 8, 10, 12, 14, 15, 20] 14 } 15 minArr(arr);
三、选择排序
概念:将第一位依次与后面的元素相比较,得到最小值,与第一位交换。再用第二位依次与后面元素相比较,得到最小值,与第二位交换。
从原始数据中找到最小元素,并放在数组的最前面。然后再从下面的元素中找到最小元素,放在之前最小元素的后面,直到排序完成。
1 var arr=[1,2,5,22.2,6.63,55,4,5,3.99,99.99,5,4,11]; 2 for(let i=0;i<arr.length-1;i++){ 3 var min=arr[i];//假设第一位是最小值 4 var minIndex=i;//再拿到最小值时的索引 5 for(let j=i+1;j<arr.length;j++){ 6 if(min>arr[j]){//假设失败 最小值大于了后一位的值 7 min=arr[j];//存储此时的最小值 8 minIndex=j;//存储此时最小值的索引 9 } 10 } 11 arr[minIndex]=arr[i];//再把第一位的数据放在第二位最小值的位置 12 arr[i]=min;//再把最小值放在第一位的位置 13 } 14 console.log(arr)
四、set方法
set方法不仅可以对数组排序,还可以去重
1 var arr=[1,5,4,2,10,8,8,20,15,14,12]; 2 3 var newarr=new Set(arr); 4 5 console.log(newarr)