今天寫三種演算法:氣泡排序(兩種)、選擇排序、二分法查詢
/**
* 氣泡排序,將較小的數向前移動
* @param arr
*/public static void bubblesort(int arr)}}
}
/**
* 氣泡排序,將較大的數向後移動
* @param arr
*/public static void bubblesort(int arr)}}
}
/**
* 選擇排序
* 將所有待排序元素中最小的元素放在序列的指定位置
* @param arr
*/public static void selectionsort(int arr)}}
}
/**
* 二分法的前提是元素有序排列
* 通過每一次縮減一半的查詢資料來達到快速查詢
** @param arr
* @param destnum
* @return
*/public static int binarysearch(int arr, int destnum)
//中間元素比目標數值大,由於元素從小到大有序排列,所以目標數值在 start 到 middle-1 中間
if (arr[middle] > destnum)
//中間元素比目標數值小,由於元素從小到大有序排列,所以目標數值在 middle+1 到 end 中間
if (arr[middle] < destnum)
}//陣列中沒有這個元素,返回 -1
return -1;
}
PHP基礎演算法(冒泡)(選擇)(二分查詢)
今天有點時間,回顧一下php的基本演算法,好久沒寫了,今天覆習一下,免得忘記了!氣泡排序 相鄰兩個元素比較,小於 或大於 則交換兩個元素的位置,直到走完所有的元素。時間複雜度o n 2 param arr return mixed 氣泡排序 function maopaosort arr retur...
氣泡排序 選擇排序和二分查詢演算法
氣泡排序 思路 氣泡排序的思路 實現 public static void bubblebettersort int array if flag p counter counter true 選擇排序 演算法思想 從待排序的陣列中選擇乙個最小的元素,將它與陣列的第乙個位置的元素交換位置。然後從剩下的...
冒泡 選擇 插入 快速 二分查詢
氣泡排序 時間最優 o n 最壞o n2 穩定 def bubble alist n len alist for j in range n 1 for i in range n 1 j if alist i alist i 1 alist i alist i 1 alist i 1 alist i ...