// 虽然简单但是有bug的说。。。只可远观不可
// 源
var arr = [4,5,3,2,5,6,7,8,8,9,2,5,1];
// 获取长度
var len = arr.length;
// 新建一个
var arr2 = new Array(len);
// 初始化为0
for(var i=0;i<len;i++){
arr2[i] = 0;
}
// 如果出现了让它加1
for(var i=0;i<len;i++){
arr2[arr[i]]++;
}
var arr3 = [];
// 从小到大排序
for(var i=0;i<len;i++){
// 如果等于0说明没有出现这个数
if(arr2[i]!=0){
// 判断里面出现了几次,根据出现的次数添加
for(var k=0;k<arr2[i];k++){
arr3.push(i);
}
}
}
console.log(arr3); //[1, 2, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 9]
// 清空数组
arr3.splice(0);
// 从大到小排序
for(var i=len-1;i>=0;i--){
// 如果等于0说明没有出现这个数
if(arr2[i]!=0){
// 判断里面出现了几次,根据出现的次数添加
for(var k=0;k<arr2[i];k++){
arr3.push(i);
}
}
}
console.log(arr3); //[9, 8, 8, 7, 6, 5, 5, 5, 4, 3, 2, 2, 1]