数据结构和算法之 查找
线性表查找算法
顺序查找
折半查找(线性表必须是已经排序好的)
1 /**折半查找 2 * @param obj 3 * @param value 4 */ 5 public static void halfSort(int[] obj,int value){ 6 int len=obj.length;//获取数组的长度 7 int min=0; 8 int max=len-2; 9 while (min<=max) { 10 int middle=(min+max)/2;//获取数组中间元素的下标 11 if(obj[middle]==value){ 12 System.out.println("zhaodao"); 13 return ; 14 } 15 else if (obj[middle]>value) { 16 max=middle-1; } 17 else{ 18 min=middle+1; 19 } 20 System.out.println("zhaodao失败"); 21 }
二叉查找树()
1若它的左子树非空,则左子树上所有结点的值均小于根结点的值
2若它的右子树非空,则右子树上所有结点的值均大于于根结点的值
3左右子树本身又是一颗二叉查找树
中序遍历二叉查找树所得的中序遍历序列是一个递增序列(左中右)