找出字符串
来源:互联网 发布:逻辑门电路实验数据 编辑:程序博客网 时间:2024/05/23 11:56
题目描述
有一个排过序的字符串数组,但是其中有插入了一些空字符串,请设计一个算法,找出给定字符串的位置。算法的查找部分的复杂度应该为log级别。
给定一个string数组str,同时给定数组大小n和需要查找的string x,请返回该串的位置(位置从零开始)。
测试样例:
["a","b","","c","","d"],6,"c"
返回:3
class Finder{public: int findString(vector<string> str, int n, string x) { int begin=0,end=n-1,mid; while(begin<=end) { mid=(begin+end)/2; while(mid<n&&str[mid]=="") mid++; if(mid==n-1&&str[mid]=="") { while(mid>0&&str[mid]=="") n--; } if(str[mid]==x) return mid; else if(str[mid]>x) end=mid-1; else begin=mid+1; } return -1; }};
0 0
- 找出字符串
- 找出字符串
- 找出字符串
- 找出字符串
- 找出字符串
- 找出字符串
- 找出字符串
- 找出字符串的组合
- 找出字符串中的中文
- 牛客网 | 找出字符串
- java找出字符串中的汉字
- 找出字符串中最长数字
- 找出字符串中最长的数字字符串
- 从字符串中找出数字字符串
- 找出字符串中最长的数字字符串
- 找出字符串中最长数字字符串
- 在字符串中找出第一个数字
- 找出给定字符串对应的序号...
- 仿微信6.0笔记
- packTools.py
- 19. jQuery 遍历
- Linux 中mysql 安装 导入
- iOS开发有关头像上传的问题
- 找出字符串
- 【转】Android示例HelloGallery中R.styleable unresolved的解决办法
- Android中的属性动画
- MotionEvent的getX(),getY()与getRawX(),getRawY()的区别
- Intint.Parse()int.TryParse()Convert.toInt32()
- 正则表达式
- docker容器网络模式配置场景
- 距某某日期倒计时
- 8.11.1 Internal Locking Methods