oddAndevenNumberSorted
奇數(odd)排在偶數(even)前
by Chris_Walter
JavaScript
class oddAndevenNumberSorted {
constructor(){
this.array = [];
}
toString(){
return this.array.join();
}
insert(max, min){
this.array.push(generateRandomNumber(max, min));
}
swap(A, B){
[this.array[A], this.array[B]] = [this.array[B], this.array[A]];
}
oddAndevenNumberMerge(){
let length = this.array.length;
for(let i=0; i<length - 1; i++){
let evenIndex = i;
for(let j=i; j<length; j++){
if(this.array[evenIndex] % 2 === 0){
evenIndex = j;
}
}
if(i !== evenIndex){
this.swap(i, evenIndex);
}
}
}
}
const generateRandomNumber = (max, min) => {
return Math.floor(Math.random()*max) + min;
}
const nonSortedArray = (max, min) => {
const array = new oddAndevenNumberSorted();
for(let i=0; i<50; i++){
array.insert(max, min);
}
console.log(`未排序前${array}`);
array.oddAndevenNumberMerge();
console.log(`排序後${array}`);
}
nonSortedArray(50, 1);