基本排序算法

冒泡算法

public void BubbleSort(int[] array){
  if(array==null||array.length==0)
            return;
  boolean flag=true;
  for(int i=0;i=i;j--){
               if(array[j]>array[j+1]){
                      Swap(array[j],array[j+1]);
                      flag=true;      
               } 
      }
  }
}

简单选择排序

public void SelectSort(int [] array){
    if(array==null&&array.length==0)
            return;
    for(int i=0;i
堆排序
public void HeapSort(int[] array){
      if(array==null||array.length==0)
             return;
      for(int i=array.length/2-1;i>=0;i--){
           HeapJust(array, i, array.length-1);
      }
      for(int i=array.length-1;i>=0;i--){
              Swap(array, 0,i );
              HeapJust(array, 0, i-1);
      }
}
public void HeapJust(int[] array,int s, int m){
        int j;
        int temp=array[s];
        for(j=2*s; j<=m; j=2*j){
          if(jarray[j+1])
                j++;
          if(temp>array[j])
               break;
          array[s]=array[j];
          s=j;
     }
         array[s]=temp;
}

快排

public void  QuickSort(int[] array){
      QSort(array,0,array.length-1);
}
public void QSort(int[] array,int low,int high){
       int pivot;
       if(low=pivotkey)
                   high--;
              swap(array,low,high);
              while(low

归并排序

 public void MergeSort(int [] array ){
         if(array==null||array.length==0)
               return;
         MSort(array, temp,0, array.length);
          
 }
基本排序算法_第1张图片
时间复杂度

你可能感兴趣的:(基本排序算法)