《JAVA》淺談——順序查詢、折半查詢
阿新 • • 發佈:2018-11-10
順序查詢
基本原理:依次遍歷
public class Solution {
public static int SequenceSearch(int[] sz, int key) {
for (int i = 0; i < sz.length; i++) {
if (sz[i] == key) {
return i;
}
}
return -1;
}
}
折半查詢
基本原理:每次查詢都對半分,但要求陣列是有序的
public class Solution { public static int BinarySearch(int[] sz,int key){ int low = 0; int high = sz.length - 1; while (low <= high) { int middle = (low + high) / 2; if(sz[middle] == key){ return middle; }else if(sz[middle] > key){ high = middle - 1; }else { low = middle + 1; } } return -1; } }