早上UML统一建模语言学了用例图,乒乓球课继续练习反手击球,进一步规范动作。下午离散学到了集合关系的闭包运算以及集合的划分和覆盖,数据结构则简单讲了二叉树的概念。
package runoob.binarySearch; /** * 二分查找法 */ public class BinarySearch { // 二分查找法,在有序数组arr中,查找target // 如果找到target,返回相应的索引index // 如果没有找到target,返回-1 public static int find(Comparable[] arr, Comparable target) { // 在arr[l...r]之中查找target int l = 0, r = arr.length-1; while( l <= r ){ //int mid = (l + r)/2; // 防止极端情况下的整形溢出,使用下面的逻辑求出mid int mid = l + (r-l)/2; if( arr[mid].compareTo(target) == 0 ) return mid; if( arr[mid].compareTo(target) > 0 ) r = mid - 1; else l = mid + 1; } return -1; } }
早上刘老师还讲到他也想试行王老师的激励教育方法,但是出于人道主义考虑,放弃了这种想法。
标签:arr,target,int,9.28,Comparable,mid,查找 From: https://www.cnblogs.com/binglinll/p/17736971.html