相鄰元素兩兩比較,大的往後放,第一次完畢,最大值出現在了最大索引處
int k=
;for
(int i=
0;i1;i++)}
}for
(int i=
0;i)
第乙個數依次與後面的數比較,第一次比較完之後最小的數在最前面 。如果前面的數大於後面的數,就進行位置的交換。
//陣列排序之選擇排序
int[
] arr=
;int minindex=0;
//定義乙個最小元素的索引
int temp=0;
for(
int i =
0; i < arr.length; i++)}
//將最小元素放到本次迴圈的前端
temp=arr[i]
; arr[i]
=arr[minindex]
; arr[minindex]
=temp;
}//然後尋找下次迴圈中最小元素放於下次迴圈的最前端
system.out.
println
(arrays.
tostring
(arr)
);
第k次將前面k個數按從小到大排序,每一次將後面的數插入到前面的合適位置
int k=
;for
(int i=
1;i)else
break;}
}for
(int i=
0;i)//插入排序
氣泡排序的一種優化,挖坑填數。
public
class
quicksortutils
}/**
* @param arr 要排序的陣列
* @param start 開始位置
* @param end 結束位置
* @return 返回的是分割槽的中間索引
*///挖坑填數
private
static
intgetindex
(int
arr,
int start,
int end)
//挖坑填數
if(i < j)
//2.從前往後找
while
(i < j && arr[i]
<= x)
//挖坑填數
if(i < j)
} arr[i]
= x;
//把基準數填到最後乙個坑里
return i;
}}
陣列排序方法
var arr 6 3,5 1,9 4,7 8,2 1 氣泡排序 比較相鄰的兩項,如果第一項比第二項大,則交換他們。氣泡排序 array.prototype.bubblesort function arr.bubblesort 2 選擇排序 原址比較排序演算法。找到資料結構中的最小值放在第一位,然後...
陣列排序(方法)
var arr 11 45,2 32,89 0 arr.sort function a,b document.write arr var arr 11 45,2 32,89 0 arr.reverse arr document.write arr 概念 陣列中相鄰元素兩兩比較,如果第乙個元素大於第二...
陣列排序方法
歸併排序 定義乙個新的陣列,將原來的陣列一分為二,將原來陣列的前一段第乙個元素和後一段第乙個元素比較 如果前乙個哪個元素小,就把那個元素放在新陣列裡面,然後緊接著較大的元素和另一半的下乙個元素 繼續比較,再選出乙個小的放在新陣列裡面。但是前提是原來這個陣列的兩半是排好順序的。public class...