**主要內容為(快排、插入排序、選擇排序、冒泡、希爾排序、堆排序、歸併排序),最下方有swap函式和測試**(自行根據函式名替換排序演算法即可)。**
**快排**————————————————————————————
public
static
void
quicksort(int arr,int low,int high)
while(leftif(left1);
quicksort(arr,right+1,high);
}————————————————————————————————
**插入排序**——————————————————————————
public
static
void
insertsort(int arr)
arr[j+1]=tmp;}}
————————————————————————————————————————
**選擇排序**——————————————————————————————————
selectsort
public
static
void
selectionsort(int arr)}}
——————————————————————————————————————————
**冒泡**————————————————————————————————————————
public
static
void
bubblesort(int arr)
}if(flag)
break;}}
——————————————————————————————————————————
**希爾排序**——————————————————————————————————
//shellsort
public
static
void
shellsort(int arr)
arr[j]=tmp;}}
}————————————————————————————————————————
**堆排序**————————————————————————————————————
//heapsort
public
static
void
heapsort(int arr)
for(int j=arr.length-1;j>0;j--)
}public
static
void
adjust(int arr,int i,int length)
if(arr[j]>tmp)
else
}arr[i]=tmp;
}————————————————————————————————————————————
**歸併排序**————————————————————————————————————
//mergesort
public
static
void
mergesort(int arr)
public
static
void
sort(intarr,int low,int high,int tmp)
public
static
void
merge(int arr,int low,int middle,int high,int tmp)
else
}while(a<=middle)
while(b<=high)
while(low<=high)
}————————————————————————————————————————————
交換函式swap
public
static
void
swap(intarr,int a,int b)
測試**
public
static
void
main(string args);
//1 2 2 3 4 4 7 7 8 9 10 19 62
// int arr = ;
mergesort(arr);
for (int i = 0; i < arr.length; i++)
}
十大排序演算法 詳解(Java原始碼)彙總
話不多說 對於排序演算法,可以大致的分為兩類 比較類排序 通過比較決定元素之間的相對次序,由於其時間複雜度不能突破o nlogn 因此也稱為非線性時間比較類排序。非比較類排序,相反道理,不通過比較來決定元素之間的相對次序,它可以突破基於比較排序的時間下界,以線性時間來執行,因此也稱為線性時間非比較類...
常見的排序演算法Java原始碼示例
將常見的排序演算法原始碼放在乙個類中。本文演算法已經經過驗證,可以直接拿來進行使用。原始碼中主要包含插入排序 直接插入排序,二分插入排序,希爾排序 交換排序 氣泡排序,快速排序 由quick,partition兩個方法完成 選擇排序 簡單選擇排序,堆排序 由heap,buildmaxheap,adj...
各類排序演算法
快速排序 void quicksort int data,int low,int high if a k a i 冒泡法 void maopao int a,int num num元素個數 歸併排序 插入排序 include stdafx.h includeusing namespace std d...