insertionSort

插入排序

by Chris_Walter

JavaScript

class ArrayList{
  constructor(){
	  this.array = [];
	}
	insert(item){
	  this.array.push(item);
	}
	toString(){
	  return this.array.join();
	}
	insertionSort(){
	  let temp;
		let length = this.array.length;
		let j;
		for(let i=1; i<length; i++){
		  j = i;
			temp = this.array[i];
			while(j>0 && this.array[j-1] > temp){
			  this.array[j] = this.array[j-1];
				j--;
			}
			this.array[j] = temp;
		}
	}
}

const nonSortedArray = (arraySize) => {
  const array = new ArrayList();
	for(let i=arraySize; i>0; i--){
	  array.insert(i);
	}
	console.log(`未使用插入排序前: ${array}`);
	array.insertionSort();
	console.log(`插入排序後: ${array}`);
	return array;
}

nonSortedArray(4);