数字在排序数组中出现的次数
来源:互联网 发布:矩阵论 方保镕 答案pdf 编辑:程序博客网 时间:2024/06/06 00:10
题目:统计一个数字在排序数组中出现的次数。
Tag:二分
int findNumK(int *num, int n, int K){ if(n == 0 || num == NULL) return 0; int firstK, lastK; int mid; //findFirstK int l = 0, r = n - 1; int flag = false; while(l <= r) { int mid = (int)((l + r) / 2); if(num[mid] == K) { flag = true; if(mid == 0 || num[mid-1] != K) { firstK = mid; break; } else { r = mid - 1; } } else if(K > num[mid]) { l = mid + 1; } else { r = mid - 1; } } if(flag == false) return 0; //findLastK l = 0; r = n - 1; flag = false; while(l <= r) { int mid = (int)((l + r) / 2); if(num[mid] == K) { flag = true; if(mid == n - 1 || num[mid+1] != K) { lastK = mid; break; } else { l = mid + 1; } } else if(K > num[mid]) { l = mid + 1; } else { r = mid - 1; } } if(flag == false) return 0; return lastK - firstK + 1;}
0 0
- 【数组8】数字在排序数组中出现的次数
- 【数组4】数字在排序数组中出现的次数
- 数组9:数字在排序数组中出现的次数
- 数字在排序数组中出现的次数(数组)
- 在排序数组中,找出给定数字的出现次数
- 在排序数组中,找出给定数字的出现次数
- 在排序数组中,找出给定数字的出现次数
- 统计一个数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 在排序数组中,找出给定数字的出现次数
- 在排序数组中,找出给定数字出现的次数
- 数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 数字在排序数组中出现的次数
- 在排序数组中,找出给定数字的出现次数
- GNU开发环境基础-------GCC开发环境
- Linux内核Crash分析
- .NET下使用JQuery实现登录
- HttpModule注册说明
- cocos2d-x CCControlPotentiometer 圆形音量按钮
- 数字在排序数组中出现的次数
- 推荐一个强大和灵活的处理XML的开源框架---GenXDM
- 利用反射加载配置文件中的类动态生成集合
- Linux gcc for 循环中 i=i++ 会造成死循环问题及 ++i / i++ 汇编分析
- 90前后大部分人都会经历的事
- PreparedStatement下中文乱码的问题
- Findbug在项目中的运用--提高代码质量
- Java泛型详解
- 阿里云服务器web环境Apache+Nginx重新换回Tengine