现在的位置: 首页 > 综合 > 正文

js写一下自己比较熟悉的一个冒泡排序算法和二分查找算法

2013年09月15日 ⁄ 综合 ⁄ 共 467字 ⁄ 字号 评论关闭

最经典的冒泡排序法,自己就只对这个印象最深了:

// 写一个简易的冒泡排序算法
// 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;
}

谨此以记。

抱歉!评论已关闭.