Java常見排序演算法

2021-07-29 18:36:06 字數 1448 閱讀 8298

氣泡排序

氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端。

public

static

void

bubblesort(int numbers)

}

}

}

選擇排序

選擇排序是一種簡單直觀的排序方法,每次尋找序列中的最小值,然後放在最末尾的位置。

public

static

void

selectsort(int numbers)

temp = numbers[i];

numbers[i] = numbers[k];

numbers[k] = temp;

}

}

插入排序

插入排序的工作原理是通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。

public

static

void

insertsort(int numbers)

}

快速排序

快速排序使用分治法策略來把乙個序列分為兩個子串行。

public

static

void

quicksort(int numbers, int start, int end)

} while (i <= j);

if (start < j)

quicksort(numbers, start, j);

if (end > i)

quicksort(numbers, i, end);

}

}

歸併排序

歸併排序是建立在歸併操作上的一種有效的排序演算法,歸併是指將兩個已經排序的序列合併成乙個序列的操作。

public void gb(int arr,int start,int

end)

}public void merge(int arr,int start,int

mid,int

end)

while(i <= mid)

temp[k++] = arr[i++];

while(j <= end)

temp[k++] = arr[j++];

for(int n = 0;n < temp.length;n++)

arr[n + start] = temp[n];

}

java常見排序演算法

package algorithms public class arraydemo int max getmax arr arr sort2 arr int start 0 int end arr.length 1 sort3 arr,start,end print arr public stati...

java常見排序演算法

1.直接插入排序 public static void insertsort int array array j 1 temp system.out.println arrays.tostring array insertsort 2.希爾排序 希爾排序,也稱遞減增量排序演算法,是插入排序的一種更高...

常見排序演算法(java)

1.氣泡排序 bubblesort 氣泡排序演算法的流程如下 1 比較相鄰的元素。2 對每一對相鄰元素作同樣的行為,從開始第一對到結尾的最後一對。3 針對所有的元素重複以上的步驟,每一趟排好乙個數。複雜度 o n 2 實現 public class code 00 bubblesort for in...