最经典的冒泡排序法,自己就只对这个印象最深了:
// 写一个简易的冒泡排序算法
// js不等同于c,在真实处理过程中我们需要注意是否是拷贝对象或引用对象,不然很容易出错
var c = [1,2,3,4,5,6,7];
var len = c.length, l, tmp;
while(--len){
l = len;
tmp = c[len];
while(l--){
if(c[l]<tmp){
tmp = c[l];
swap(l, len);
}
}
}
function swap(i, j){
var temp = c[i];
c[i] = c[j];
c[j] = temp;
temp = null;
}
另外一个就是二分法查找:
// 写一个简易的二分法查询, 默认c是增长性的
function find(c, n){
var s = 0, e = c.length-1, mid, tmp;
while(s<=e){
mid = Math.floor((s+e)/2);
tmp = c[mid];
if(tmp == n) return {'poz': mid};
if(tmp > n) e = mid-1;
else s = mid+1;
}
return false;
}
谨此以记。