数字在排序数组中的个数
来源:互联网 发布:美工试用期1800 编辑:程序博客网 时间:2024/06/03 21:56
//由于两个函数的功能大体一样,而且没有什么大的区别,只有一点细微的差距//一直想要把他们合并在一起,但是发现目前并没有找到什么好的方法class Solution {public: int GetFirstList(vector<int> data, int k, int start, int end) { if(start>end) return -1; int mid=(start+end)/2; if(data[mid]==k){ if((data[mid-1]!=k&&mid>0)||mid==0) return mid; else end=mid-1; } else if(data[mid]>k) end = mid-1; else start = mid+1; return GetFirstList(data, k, start, end); } int GetLastList(vector<int> data, int k, int start, int end) { if(start>end) return -1; int mid=(start+end)/2; if(data[mid]==k){ if((data[mid+1]!=k&&mid<end)||mid==end) return mid; else start=mid+1; } else if(data[mid]>k) end = mid-1; else start = mid+1; return GetLastList(data, k, start, end); } int GetNumberOfK(vector<int> data ,int k) { int len = data.size(); if(len<0) return -1; int count = 0; int first = GetFirstList(data, k, 0, len-1); int last = GetLastList(data, k,0, len-1); if(first>-1&&last>-1) count = last-first+1; return count; }};
阅读全文
0 0
- 数字在排序数组中的个数
- 38 - 数字在排序数组中的次数
- 排序数组输出指定数字个数
- 面试题38:数字在排序数组中的次数
- 剑指offer:数字在排序数组中的次数
- 查找指定元素在数组中的个数
- 删除排序数组中的重复数字
- 题目:删除排序数组中的重复数字
- LintCode-删除排序数组中的重复数字
- LintCode 删除排序数组中的重复数字
- 容易 删除排序数组中的重复数字
- (100)删除排序数组中的重复数字
- 删除排序数组中的重复数字
- 删除排序数组中的重复数字
- 删除排序数组中的重复数字
- 删除排序数组中的重复数字 II
- lintcode ----删除排序数组中的重复数字
- 删除排序数组中的重复数字
- 网络爬虫之开篇
- iperf 用法
- 图像分割基础算法及实现实例
- 个人笔记系列(第二篇)
- Android QuickSetting状态栏注册快速设置
- 数字在排序数组中的个数
- part 8: comparison between OOL and FL
- centos FTP 无法访问
- laravel 子查询 & join
- centos虚拟克隆
- (转载)IE8+兼容经验小结
- Android高德地图点击大头针更换大头针图片
- 使用 Spring Data JPA 简化 JPA 开发
- msyql用户权限管理