欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《十》排序算法

程序员文章站 2022-03-05 12:56:54
...

对计算机中存储的数据执行的两种最常见操作是排序和检索。

创建一个数组类和一些封装了常规数组操作的函数。

function CArray (numElements) {
	this.dataStore = []
	this.pos = 0
	this.numElements = numElements
	this.setData = setData
	this.clear = clear
	this.insert = insert
	this.toString = toString	
	this.swap = swap 
	for(var i=0; i < numElements; i++){
		this.dataStore[i] = i
	}
}

// 设置数据
function setData() {
	for(var i=0; i< this.numElements; i++){
		this.dataStore[i] = Math.floor(Math.random() * (this.numElements +1))
	}
}

// 清除数据 
function clear() {
	for(var i=0; i< this.numElements; i++){
		this.dataStore[i] = 0
	}
}

// 插入数据
function insert(element) {
	this.dataStore[this.pos++] = element
}

// 显示数据
function toString() {
	var restr = ''
	for(var i=0; i< this.numElements; i++){
		restr += this.dataStore[i] + ''
	}	
	return restr
}

// 交换数组元素
function  swap(arr, indx1, indx2){
	var temp = arr[index1]
	arr[index1] = arr[index2]
	arr[index2] = temp
}