标签:
假设有一个字符串数组,每一个字符都是一个数字(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; }
标签:
原文地址:http://www.cnblogs.com/brayden/p/5343374.html