<h2>選擇排序</h2>
選擇排序是首先在未排序的序列中找到最小的,存放到排序序列的起始位置,然后,再從剩余未排序的序列中繼續(xù)尋找最小的,然后放到已經(jīng)排序序列的末尾,以此類推,直到所有元素均排序完畢.
<p>
function selectSort(arr) {
? ?var leng=arr.length;
? ? var minIndex,temp;
? ?for(var i=0;i<leng;i++){
? ? minIndex=1;
? ?for(var j=i+1;j<leng;j++){
? ? if(arr[j]<arr[minIndex]){
? ?minIndex=j;
? ?}
? ?temp=arr[i];
? ?arr[i]=arr[minIndex];
? ?arr[minIndex]=temp;
? ?}
return arr;
}}
算法分析:
最佳情況:T(n)=O(n2);
最差情況:T(n)=O(n2);
平均情況:T(n)=O(n2);
空間復雜度:O(1);不穩(wěn)定.
排序方式:In-place.