// sort() 数组对象排序
var arr = [
{name:"小恭",age:11},
{name:"小发",age:3},
{name:"小喜",age:12},
{name:"小财",age:40}
];
console.log(arr);
console.log(arr[0]);
var compare = function(obj1,obj2){
var val1 = obj1.age;
var val2 = obj2.age;
if(val1 < val2){
return 1;
}else if(val1 > val2){
return -1;
}else{
return 0;
}
}
console.log("数组对象排序:");
var sortArr = arr.sort(compare);
console.log(sortArr);
console.log(sortArr[0]);
//插入排序
var canArr = [0,4,2,6,7,8,2,14,57,8,99,0,45,32,12,1,1,1,1,45,0,9,8,7,6,5,4,3,2,115,67,68,56,55,43,21];
console.log(canArr);
var quchArr = canArr.distinct();
console.log(quchArr);
//插入排序
function insert(arr){
var s;
//升序
for (var i = 1; i < arr.length; i++) {
for (var j = i; j > 0; j--) {
if (arr[j] < arr[j - 1]) {
s=arr[j];
arr[j]=arr[j-1];
arr[j-1]=s ;
//console.log(arr);//可以打印出来每一个改变的步骤
}
}
}
//降序
for (var i = 1; i < arr.length; i++) {
for (var j = i; j < 0; j--) {
if (arr[j] < arr[j - 1]) {
s=arr[j];
arr[j]=arr[j-1];
arr[j-1]=s ;
//console.log(arr);//可以打印出来每一个改变的步骤
} }
}
return arr;
}
console.log("插入排序:");
console.log(insert(quchArr));
//冒泡排序
function bubble(arr) {
var s ;
// for (var i =0;i<arr.length;i++) {
// for (var j = 0; j < arr.length; j++) {
// if (arr[j] > arr[j + 1]){
// s = arr[j];
// arr[j]=arr[j+1];
// arr[j+1]=s;
// }
// }
// }
for (var i =0;i<arr.length;i++) {
for (var j = 0; j < arr.length; j++) {
if (arr[j] < arr[j + 1]){
s = arr[j];
arr[j]=arr[j+1];
arr[j+1]=s;
}
}
}
return arr;
}
console.log("冒泡排序:");
var arr = [
{name:"小恭",age:11},
{name:"小发",age:3},
{name:"小喜",age:12},
{name:"小财",age:40}
];
console.log(arr);
console.log(arr[0]);
var compare = function(obj1,obj2){
var val1 = obj1.age;
var val2 = obj2.age;
if(val1 < val2){
return 1;
}else if(val1 > val2){
return -1;
}else{
return 0;
}
}
console.log("数组对象排序:");
var sortArr = arr.sort(compare);
console.log(sortArr);
console.log(sortArr[0]);
//插入排序
var canArr = [0,4,2,6,7,8,2,14,57,8,99,0,45,32,12,1,1,1,1,45,0,9,8,7,6,5,4,3,2,115,67,68,56,55,43,21];
console.log(canArr);
var quchArr = canArr.distinct();
console.log(quchArr);
//插入排序
function insert(arr){
var s;
//升序
for (var i = 1; i < arr.length; i++) {
for (var j = i; j > 0; j--) {
if (arr[j] < arr[j - 1]) {
s=arr[j];
arr[j]=arr[j-1];
arr[j-1]=s ;
//console.log(arr);//可以打印出来每一个改变的步骤
}
}
}
//降序
for (var i = 1; i < arr.length; i++) {
for (var j = i; j < 0; j--) {
if (arr[j] < arr[j - 1]) {
s=arr[j];
arr[j]=arr[j-1];
arr[j-1]=s ;
//console.log(arr);//可以打印出来每一个改变的步骤
} }
}
return arr;
}
console.log("插入排序:");
console.log(insert(quchArr));
//冒泡排序
function bubble(arr) {
var s ;
// for (var i =0;i<arr.length;i++) {
// for (var j = 0; j < arr.length; j++) {
// if (arr[j] > arr[j + 1]){
// s = arr[j];
// arr[j]=arr[j+1];
// arr[j+1]=s;
// }
// }
// }
for (var i =0;i<arr.length;i++) {
for (var j = 0; j < arr.length; j++) {
if (arr[j] < arr[j + 1]){
s = arr[j];
arr[j]=arr[j+1];
arr[j+1]=s;
}
}
}
return arr;
}
console.log("冒泡排序:");
console.log(bubble(quchArr));
以上几种方法鄙人稍作总结,如有更好欢迎分享