前端开发首页投稿(暂停使用,暂停投稿)Web 前端开发

JS一些常见排序方法和基本算法

2016-09-23  本文已影响227人  yanruoxin

1.选择排序

function chooseSort(arr) {   
    for(let i=0;i<arr.length-1;i++){       
             let min=arr[i];       
             for(j=i;j<arr.length;j++){            
                  if(arr[j]<min){          
                        let temp=arr[j];               
                        arr[j]=min;               
                         min=temp;           
                   }       
              }   
     }  
    return arr;
}

2.冒泡排序;

function BubbleSort(arr) {    
    for(let i=0;i<arr.length-1;i++){        
      for(let j=i+1;j<arr.length;j++){            
          if(arr[i]>arr[j]){                
              let temp=arr[i];                
              arr[i]=arr[j];                
              arr[j]=temp;            
          }        
      }    
  }   
 return arr;
}

3.合并两个排序的数组;

function MergeTwoSortArray(arr1,arr2) {    
    let result=[];    
    let i=0,j=0;    
    while(i<arr1.length&&j<arr2.length) {        
        if(arr1[i]>arr2[j]){            
            result.push(arr2[j]);            
            j++;        
        }        
        else {            
            result.push(arr1[i]);            
            i++;        
        }    
    }    
    while(i<arr1.length){        
        result.push(arr1[i]);        
        i++;    
    }    
    while (j<arr2.length){        
        result.push(arr2[j]);        
        j++;    
    }        
    return result;
}
上一篇下一篇

猜你喜欢

热点阅读