package sort;
public
class sort
// 使用隨機數初始化陣列
public
static
void inite(int list)
}// 列印陣列
public
static
void display(int list)
system.out.println();
}// 插入排序o(n²),將新的元素插入到乙個有序的陣列,遍歷有序陣列找到插入位置
public
static
void insertionsort(int list)
list[k + 1] = temp;}}
// 氣泡排序o(n²)、o(n),依次比較相鄰元素,若不符合排序規則,則交換2個元素
public
static
void bublesort(int list) }}
}// 歸併排序o(nlogn),遞迴地將乙個陣列劃分為2個子陣列,然後將子陣列遞迴地歸併為乙個陣列
public
static
void mergesort(int list)
}// 將2個數合併到list陣列中
public
static
void merge(int firsthalf, int secondhalf, int list) else
}while (current1 < firsthalf.length)
while (current2 < secondhalf.length)
}// 快速排序的輔助方法
public
static
void quicksort(int list)
// 快速排序o(nlogn)、o(n),將陣列中小於主元pivot的元素放在pivot前,大於pivot的元素放在pivot後
public
static
void quicksort(int first, int last, int list)
}// 劃分,將《主元pivot的元素放在pivot前,>pivot的元素放在pivot後,對於其中的關係符號》 < >= <= 需要好好斟酌下
public
static
int partition(int first, int last, int list)
while (list[high] > pivot && low < high)
if (high > low)
}while (high > first && list[high] > pivot)
if (list[high] <= pivot) else
}}
排序演算法java實現
以下文章 亦風亦塵的空間http blog.csdn.net lschou520 archive 2008 10 29 3176422.aspx 插入排序 package org.rut.util.algorithm.support import org.rut.util.algorithm.sor...
java實現排序演算法
四種排序方式 1.氣泡排序 2.插入排序 3.快速排序 4.歸併排序 author zhaijian public class sorts bubblesort a insertsort a quicksort a mergesort a print a 氣泡排序 兩個迴圈,第乙個迴圈是指要排序的總...
排序演算法java實現
選擇排序類 交換排序類 歸併排序類 附工具類 直接插入排序public class insertionsorter a j tmp arrayutils.printarray a public static super anytype void sort anytype a,int left,int...