算法(第4版本)1.1.29
来源:互联网 发布:广东软件评测中心 编辑:程序博客网 时间:2024/05/18 03:21
等值键
为BinarySearch类添加一个静态方法rank(),它接受一个键和一个整型有序数组(可能存在重复键)作为参数并返回数组中小于该键的元素数量,以及一个类似的方法count()来返回数组中等于该键的元素的数量。注意:如果i和j分别是rank(key,a)和count(key,a)的返回值,那么a[i..i+j-1]就是数组中所有和可以相等的元素。
(我怎么看它后面的注意,应该count方法是返回“大于该键的元素数量”呢)
private static void test29(){ int key = 2; int[] a = {0, 1, 1, 1, 2, 3, 4, 5, 6, 7}; int result1 = rank2(key, a); System.out.println("result1 = " + result1);} //最大的,小于key的数的index+1 private static int rank2(int key, int[] a){ int count = 0; int lo = 0; int hi = a.length - 1; while(lo <= hi){ int mid = lo + (hi - lo) / 2; System.out.println("a[" + mid + "] = " + a[mid]); if(key <= a[mid]){ hi = mid - 1; } else if(key > a[mid]){ count = mid + 1; lo = mid + 1; } System.out.println("lo = " + lo + ", hi = " + hi); } return count;}
0 0
- 算法(第4版本)1.1.29
- 算法(第4版本)1.1.15
- 算法(第4版本)1.1.20
- 算法(第4版本)1.1.22
- 算法(第4版本)1.1.27
- 算法(第4版本)1.1.30
- 算法(第4版本)1.1.28
- 算法(第4版本)1.1.31
- 算法(第4版本)1.1.32
- 算法(第4版)--读书笔记
- 算法第4版(完整中文版)
- 算法:第4版
- 算法 第4版
- 基本算法(Delphi版本)
- 排序算法(java版本)
- AStar 算法(erlang版本)
- KMP算法(java版本)
- BF算法(java版本)
- 安卓VectorAnimation使用记录
- 排序算法
- Maven
- 一步步在LPCXpresso54608开发板上运行emWin库
- Gradle Execution failed for task ':xxxx:findMainClass'.
- 算法(第4版本)1.1.29
- hihocoder #1482 : 出勤记录II dp
- CSS响应式 Web 设计(二)
- ThreadPoolExecutor源码解析
- HYSTRIX熔断器理解
- TensorFlow实现VGGNet-16(forward和backward耗时计算)
- Hadoop初探之Hadoop生态圈
- phpstudy+yii2集成环境快速开发
- 两种压缩方式