1.冒泡排序和选择排序的回顾
冒泡排序:相邻之间做比较,大的就向后交换
arr[ i ] > arr[ i + 1]
//冒泡排序
//函数封装它
function bubbleSort(arr) {
//控制比较的轮数
for(var i = 0 ; i < arr.length - 1 ; i++) {
//从头开始做比较(大数下沉)
for(var j = 0 ; j < arr.length - 1 - i ; j++) {
if(arr[j] > arr[j+1] ) {
var z = arr[j] ;
arr[j] = arr[j + 1] ;
arr[j + 1] = z ;
}
}
}
console.log(arr);
return arr ;
}
var arr2 = selectSort([8,6,4,3,5,10]);
console.log(arr2);
选择排序:找到最小的数,放在最前面
//封装函数
function selectSort(arr) {
//控制比较的轮数
for(var i = 0 ; i < arr.length - 1 ; i++) {
//假设第一个位置小,与后面所有的数比较
var min = i ;
for(var j = i + 1 ; j < arr.length ; j++) {
//拿第一个位置上的数与后面所以数作比较
if(arr[min] > arr[j]) {
//min 记录最小的角标
min = j ;
}
}
//判断与假设是否相同
if(min !== i) {
var z = arr[min];
arr[min] = arr[i] ;
arr[i] = z ;
}
}
//console.log(arr);
return arr;
}
var arr2 = selectSort([8,6,4,3,5,10]);
console.log(arr2);
2.数组的方法
数组的方法 : push() pop() unshift() shift()
数组的常用方法
join() 把数组变成字符串
includes 判断数组中是否存在某个值
indexOf() 判断数组中是否存在某个值,返回第一次出现的下标,找不到就返回-1
lastIndexOf() 判断数组中是否存在某个值,返回最后一次出现的下标
concat() 拼接数组,返回一个新的数组
slice(i , i) 截取数组中的部分值,返回一个新的数组
splice(i , 删除的个数 , 新增的值...) 新增,删除,替换 ----- 直接改变原数组 !!!!
//判断数组中是否存在某个值
function includes(arr , n) {
for(var i in arr) {
if(arr[i] === n) {
return true;
}
}
return false ;
}
//判断数组中是否存在某个值&#