排序
- 排序,就是把一个乱序的数组,通过我们的处理,让他变成一个有序的数组
冒泡排序
- 对相邻的两个数进行比较,如果第一个比第二个大,则交换他们两个
- 对每队相邻的元素重复同样的工作,从第一队一直比较到最后一对,做完后,最后的数字会是最大
- 重复前面的操作,除开最后一个元素
- 重复对越来越少的元素重复之前的操作,直到没有元素需要比较
var arr=[98,78,59,65,90]
var n=arr.length
for(var i=0;i<n-1;i++){
for(var j=0;j<n-1-i;j++){
if(a[i]>a[i+1]){
var temp=arr[1]
arr[i]=arr[i+1]
a[i+1]=temp
}
}
}
选择排序
- 从小到大排序:
- 外层循环n-1次
- 选定第一个数为最小值,下标为minIndex,
- 依次与之后的数字比较,如果minIndex数更大,则将minIndex下标赋给更小的数
- 直到比完所有的数,将minIndex下标的数放在首位
- 接着从第二个数开始比较,重复上面的操作。
数组去重
- 去掉数组中重复的元素
方法一:利用indexOf或者includes实现
思想:
- 定义一个空数组[] ,用于存储去重数组
- 遍历数组
- 判断新数组中有无遍历的这个元素,如果没有,就push进去
方法二:利用双重for循环和splice实现
思想:
- 外层循环n-1次
- 内层循环实现判断两个数是否相同,如果相同,使用splice方法裁掉重复元素
- 内层循环变量--,避免漏掉重复元素
- 最后输出数组。