使用二分查找向一个有序数组中插入一个数据
生活随笔
收集整理的這篇文章主要介紹了
使用二分查找向一个有序数组中插入一个数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
折半查找法找到一個元素在數組中的下標* @param arr 數組* @param key 要查找的元素* @return 找到則返回元素在數組中的下標,如果沒找到,則返回這個元素在有序數組中的位置* 如:[1,4,6,7,10,11,15],查找8在數組中的位置,如果存在則返1,不存在則返回在7這個下標+1的這個位置上,
也就是說在返回10所在位置上的下標*/ public static int arrayIndexOf(int[] array,int key) {int min,max,mid;min = 0;max = array.length - 1;while(min <= max) {mid = (min + max) >> 1;if (key > array[mid]) {min = mid + 1;} else if (key < array[mid]) {max = mid - 1;} else {return mid;}}return min;
}
也就是說在返回10所在位置上的下標*/ public static int arrayIndexOf(int[] array,int key) {int min,max,mid;min = 0;max = array.length - 1;while(min <= max) {mid = (min + max) >> 1;if (key > array[mid]) {min = mid + 1;} else if (key < array[mid]) {max = mid - 1;} else {return mid;}}return min;
}
轉載于:https://www.cnblogs.com/cdx19971126/p/6142467.html
總結
以上是生活随笔為你收集整理的使用二分查找向一个有序数组中插入一个数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一文剖析电影“流浪地球”推广营销方式
- 下一篇: 水系图一般在哪里找得到_如何对于排水系统