氣泡排序演算法
比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。
相同元素前後順序並沒有改變,所以氣泡排序是一種穩定排序演算法
總結:每次判斷大的放到最後
**:
//氣泡排序
int num=;
//第一次迴圈5次,第二次迴圈4次
for(int i=0;i for(int j=0;jif(num[j]>num[j+1])
} }for(int i=0;i system.out.println(num[i]);
}}
選擇排序演算法
每一趟從待排序的資料元素中選出最小(或最大)的乙個元素,順序放在已排好的數列的最後,知道全部待排序資料元素排完
選擇排序是不穩定的排序
總結:首先選擇最小的放到首或者尾
**:
// 選擇排序
int num = ;
for (int i = 0; i < num.length - 1; i++)
}if (minnum != i)
}for(int n:num)
}/**
* 第一次 4 36 54 98 86 65
* 第二次 4 36 54 98 86 65
* 第三次 4 36 54 98 86 65
* 第四次 4 36 54 65 98 86
* 第五次 4 36 54 65 96 98
*/
直接插入排序演算法
從後向前找到合適的位置後插入
基本思想:每步將乙個待排序的記錄,將其順序碼大小插入到前面已經排序的子串行的合適位置(從後向前找到合適的位置後),直到全部插入排序完為止
二分查詢演算法
前提是已經排好序的陣列中,通過將待查詢的元素與中間索引值對應的元素進行比較,若大於中間索引值對應的元素,去右半部分查詢,否則,去左半部分查詢。依此類推。直到找到為止,找不到返回乙個負數
**:
// 直接插入排序演算法
int num = ;
for (int i = 1; i < num.length; i++) else
}//結束後j=-1
if (temp != num[j+1])
}for(int n:num)
arrays工具類
二分查詢:
int num = ;
int index=arrays.binarysearch(num, 99);
system.out.println(index);
輸出陣列:arrays.tostring(陣列)
陣列排序:arrays.sort(int array)
java常用排序演算法
一 選擇排序 public class numbersort private static void read string args private static void print int arrays system.out.println private static void select...
java常用排序演算法
氣泡排序演算法 public static void bubbsort int a 演算法思想 由陣列頭部開始,每次比較兩個元素,順序不滿足就進行交換,當前陣列最大值 最小值 會被放在最後。一趟排序完成,然後同樣的方法進行後面的比較。插入排序演算法 public static void inssor...
java常用排序演算法
1 氣泡排序 氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果它們的順序錯誤就把它們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。演算法描述 實現 如下 fu...