您的位置:首页 > 移动开发 > 微信开发

小程序 - 最大递增数

2016-03-31 23:32 375 查看
假设有一个字符串数组,每一个字符都是一个数字(1-9),找到其中的最大递增数,递增数是指相邻的数位从小到大排列的数字,如:28953456323,递增数有:289,3456,23,那么最大的递增数为3456。

char *maxAscStr(char *str)
{
char *begin, *cur;
int len, max;

if (!str || !str[0])
return NULL;
for (cur = begin = str, max = len = 1, str++; str[0]; str++, len++)
if (str[0] <= str[-1]) {
if (len > max) {
max = len;
begin = cur;
}
len = 0;
cur = str;
}
if (len > max) {
max = len;
begin = cur;
}
if ((cur = calloc(max + 1, 1)) == NULL)
return NULL;
memcpy(cur, begin, max);
return cur;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: