描述:
给定一个字符串,求最大连续递增数字串。
比如输入abc12324ff1236,输出1236;
解法:双指针
代码如下:
#include <iostream>
#include <vector>
#include <map>
#include <time.h>
#include <algorithm>
using namespace std;
string getMaxSubString(string& s){
string result = "";
int len = 0;
for(int i = 0; i < s.size();){
if(s[i] < '0' || s[i] > '9'){
i++;
continue;
}
int j = i + 1;
while(j < s.size() && s[j] <= '9' && s[j] >= '0' && s[j] > s[j - 1])
j++;
if(j - i > len){
len = j - i;
result = s.substr(i, j - i);
}
i = j;
}
return result;
}
int main()
{
string s = " asdfsdfr4";
cout << getMaxSubString(s);
return 0;
}