1吏祸、快速排序对蒲。
var arr=[2,4,6,88,78,67,65,9,12];
function quicklySort(list){
if(list.length < 1 ){ //如果list.length小于1的話钩蚊。
return list; //那么就返回原來的數(shù)組中,重新循環(huán)蹈矮。
}
var centerIndex = Math.floor(list.length / 2); //數(shù)組的中間數(shù)下標(biāo)
var centerNum = list.splice(n,1)[0]; //數(shù)組的中間數(shù)
var left = [],right = []; //創(chuàng)建兩個(gè)空數(shù)組用于裝參數(shù)砰逻。
for(var i=0;i<list.length;i++){
if(list[i] < num){ //當(dāng)數(shù)組里面的數(shù)值小于中間數(shù)
left.push(list[i]) //推入到左邊的空數(shù)組中。
}else{
right.push(list[i]) //大于中間數(shù)的數(shù)泛鸟,推入到右邊的數(shù)組中蝠咆。
}
}
return quicklySort(left).concat([num],quicklySort(right)) //返回值 左邊的數(shù)組和中間的數(shù)值還有右邊的數(shù)組。
}
console.log(quicklySort(arr)) //打印重新排序的數(shù)組北滥。
2刚操、判斷質(zhì)數(shù):自然數(shù)大于1且只能被一和他本身整除的數(shù)字.
function zhiNum(n1,n2){
var arr=[];
for(var i=0;i<n2;i++){
if(isSure(i)){
arr.push(i)
}
}
return arr
}
function isSure(n){//傳進(jìn)來的每一個(gè)數(shù)從2開始向后取余 ==0時(shí)表示能被整除 不等于0不能被整除此時(shí)這個(gè)數(shù)是質(zhì)數(shù)
for(var j=2;j<n;j++){
if(n % j == 0){
return false
}
}
return true
}
console.log(zhiNum(1,100)).
3、冒泡排序再芋。
var brr = [1, 344, 55, 34, 23, 2, 67, 82] //創(chuàng)建一個(gè)數(shù)組
function maoPao(arr) {
var l = arr.length; // 設(shè)置一個(gè)長度菊霜;
for (var i = 0; i < l - 1; i++) { // 變量i為坐標(biāo),獲取數(shù)組中數(shù)值济赎,所以是l-1為坐標(biāo)的長度鉴逞;
for (var j = 0; j < l - 1 - i; j++) { // 變量J為
if (arr[j] > arr[j + 1]) {
var num = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = num
}
}
}
return arr
}
console.log(pao(brr))