面試基礎演算法整理–選擇排序
1.演算法原理:
n個記錄的直接選擇排序可經過n-1趟直接選擇排序得到有序結果。
具體演算法描述如下:
1.初始狀態:無序區為r[1…n],有序區為空;
2.第i趟排序(i=1,2,3…n-1)開始時,當前有序區和無序區分別為r[1…i-1]和r[i…]。該趟排序從當前無序區中選出關鍵字最小的記錄 r[k],將它與無序區的第1個記錄r交換,使r[1…i]和r[i+1…n)分別變為記錄個數增加1個的新有序區和記錄個數減少1個的新無序區;
3.n-1趟結束,陣列有序化了。
2.演算法**:
3.演算法實現
public
class
selectsort
; system.out.
println
(arrays.
tostring
(arr));
fun(arr)
; system.out.
println
(arrays.
tostring
(arr));
}public
static
void
fun(int[
] arr)
} int temp=arr[i]
;arr[i]
=arr[index]
;arr[index]
=temp;}}
}````
``
演算法基礎 選擇排序
選擇排序 直接上 從小到大排序 function selectionsort arr temp arr i arr i arr minindex arr minindex temp return arr 解釋 所謂選擇,就是每次用當前的數字跟剩下的數字逐個進行對比,挑選出最小或者最大的數。i 0時,...
基礎演算法 選擇排序
總體思想 先讓第乙個與第二個數比較,如果第二個數大,則用第乙個數繼續與第三個數比較,反之,則用第二個數與第三個數比較,若第三個數小,則用第三個數與第四個數比較,如此類推.直至在需排序的數中找到最小的乙個,並將這個數與第乙個數交換位置.再從第二個數開始,與第三個數開始比較,直至找到第二最小的數,並將這...
面試基礎演算法整理 冒泡演算法
1.演算法原理 氣泡排序演算法的原理如下 1.比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。2.對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。3.針對所有的元素重複以上的步驟,除了最後乙個。4.持續每次對越來越少的元素重複上面的步驟,直到沒...