徐州建站公司模板,最好网站建设公司制作平台,移动局域网ip做网站,做个外贸网站大概多少钱二分查找-Java
概念
二分查找也称折半查找#xff08;Binary Search#xff09;#xff0c;它是一种效率较高的查找方法。但是#xff0c;折半查找要求线性表必须采用顺序存储结构#xff0c;而且表中元素按关键字有序排列。
代码 查找目标数据是否存在数组中#xff…二分查找-Java
概念
二分查找也称折半查找Binary Search它是一种效率较高的查找方法。但是折半查找要求线性表必须采用顺序存储结构而且表中元素按关键字有序排列。
代码 查找目标数据是否存在数组中存在返回下标不存在返回-1 public static int binarySearchDemo(int[] arr, int target) {if (arr null || arr.length 0) {return -1;}int pre 0;int last arr.length - 1;int mid;while (pre last) {mid (pre last) 1;if (arr[mid] target) {pre mid 1;} else if (target arr[mid]) {last mid - 1;} else {return mid;}}return -1;}给定一个排序数组和一个目标值在数组中找到目标值并返回其索引。如果目标值不存在于数组中返回它将会被按顺序插入的位置。 public static int searchInsert(int[] arr, int target) {if (arr null || arr.length 0) {return 0;}int pre 0;int last arr.length - 1;int mid -1;while (pre last) {mid (pre last) 1;if (arr[mid] target) {pre mid 1;} else if (target arr[mid]) {last mid - 1;} else {return mid;}}return pre;}