1. 程式人生 > >數組高級部分--排序,查找

數組高級部分--排序,查找

數組高級部分之排序 查找

1.數組排序之冒泡排序:

兩兩比較,大的往後放放,第一次比較完畢之後,最大值就出現在了最大索引出,繼續依次比較,得到一個排好序的數組!

技術分享

2.數組排序之:選擇排序:
用0索引依次和後面的索引進行比較,第一次比較完畢之後,最小值出現在了最小索處!

同理,其他索引也是依次進行比較!

技術分享

3.數組查找

基本查找:數組元素查表法(查詢數組中的元素第一次在數組中出現的索引):從頭查到尾
數組二分查找(折半查找)

思路:
1)定義最大索引和最小索引
2)計算出中間索引:
如果要查的元素和中間索引對應的元素相等,返回中間索引
如果不想等
大了,左邊找
小了右邊找
3)重寫計算出中間索引:
大了:max = mid -1 ;
小了:min = mid+1 ;
4)繼續回到(2)進行重新計算在查找!

技術分享

技術分享

4.數組快速查找

Arrays:sun公司提供的官方文檔中的一個類:包含了數組排序以及數組搜索等等的一些方法!對數組操作的工具類
java.util包下
public static String toString(int[] a):將int類型的數組轉換成字符串類型
public static void sort(int[] a)對指定的 int 型數組按數字升序進行排序。(該底層已經封裝好了,
屬於快速排序算法封裝的一個sort方法)
public static int binarySearch(int[] a,int key):二分查找

技術分享

數組高級部分--排序,查找