每日演算法題 19 5 26

2021-09-23 17:14:53 字數 510 閱讀 2913

它重複地走訪過要排序的數列,一次比較兩個元素,如果它們的順序錯誤就把它們交換過來。

走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。

比較相鄰的元素。如果第乙個比第二個大,就交換它們兩個;

對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對,這樣在最後的元素應該會是最大的數;

針對所有的元素重複以上的步驟,除了最後乙個;

重複步驟1~3,直到排序完成。

最佳情況:t(n) = o(n)   最差情況:t(n) = o(n2)   平均情況:t(n) = o(n2)

public class test9 ;

//排序

sort(array);

for (int i = 0; i < array.length; i++) }

public static int sort(int array)

}} return array;

}}

每日一道演算法題

no.1 設指標變數fron t表示鏈式佇列的隊頭指標,指標變數rear表示鏈式佇列的隊尾指標,指標變數s指向將要入佇列的結點x,則入佇列的操作序列為 a.front next s front s b.s next rear rear s crear next s rear s d.s next f...

每日一道演算法題

no.1 若有 18 個元素的有序表存放在一維陣列 a 19 中,第乙個元素放 a 1 中,現進行二分查詢,則查詢 a 3 的比較序列的下標依次為 a.1,2,3 b.9,5,2,3 c.9,5,3 d.9,4,2,3 答案 d.第一次查詢,隊首為下標1,隊尾下標18,所以是 1 18 2 9 第二...

演算法每日一題 07 31

魔術索引。在陣列a 0 n 1 中,有所謂的魔術索引,滿足條件a i i。給定乙個有序整數陣列,編寫一種方法找出魔術索引,若有的話,在陣列a中找出乙個魔術索引,如果沒有,則返回 1。若有多個魔術索引,返回索引值最小的乙個。示例1 輸入 nums 0,2,3,4,5 輸出 0 說明 0下標的元素為0 ...