int GetSubString(char *strSource, char *strResult) {
int iTmp=0, iHead=0, iMax=0;
for(int Index=0, iLen=0; strSource[Index]; Index++) {
if(strSource[Index] >= ‘0′ && strSource[Index] <= ‘9′ &&
strSource[Index-1] > ‘0′ && strSource[Index] == strSource[Index-1]+1) {
iLen++; // 连续数字的长度增1
} else { // 出现字符或不连续数字
if(iLen > iMax) {
iMax = iLen; iHead = iTmp;
}
// 该字符是数字,但数字不连续
if(strSource[Index] >= ‘0′ && strSource[Index] <= ‘9′) {
iTmp = Index;
iLen = 1;
}
}
}
for(iTmp=0 ; iTmp < iMax; iTmp++) // 将原字符串中最长的连续数字串赋值给结果串
strResult[iTmp] = strSource[iHead++];
strResult[iTmp]='\0′;
return iMax; // 返回连续数字的最大长度
}
int main(int argc, char* argv[]) {
char strSource[]=”ads3sl456789DF3456ld345AA”, char strResult[sizeof(strSource)];
printf(”Len=%d, strResult=%s \nstrSource=%s\n”,
GetSubString(strSource, strResult), strResult, strSource);
}
分享到:
相关推荐
汇集了知名公司的一些c/c++面试题: 1、关键字static的作用是什么? 2、如何判断一段程序是由c编译程序还是由c++编译程序编译的?...4、求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
判断字符串或者密码是不是连续递增的如1234567 7654321 abcdefg 之类的
例如,数组 `[1, 3, 5, 4, 7]` 的最长连续递增子序列为 `[1, 3, 5]` 或 `[4, 7]`。 解决此类问题通常有两种主要方法:动态规划(Dynamic Programming, DP)和二分查找(Binary Search)。在这里,我们主要讨论动态...
在C#编程中,生成数字和字母混合的递增序列是一项常见的需求,特别是在创建唯一标识符或序列号时。这个任务的关键在于理解如何混合数字和字母,并根据指定的位数和大小写规则进行递增。以下是一些关于如何实现这个...
题目要求实现一个程序,能够在一个给定的字符串中找到所有连续的数字序列,并最终输出最长的连续数字串。 #### 题目分析 题目中的示例代码提供了一个基础的解决方案,但存在一些问题需要改进和完善: 1. **正则...
java判断字符串是否存在递增或递减 java判断字符串是否重复
以上就是从给定文件中提炼出来的核心知识点,包括单调递增子序列、最大连续子段和的基本概念、应用场景、解决方法以及相关的 C++ 编程语言基础知识。通过这些知识点的学习和理解,可以帮助我们更好地掌握这类问题的...
在网页设计中,"js数字递增特效"是一种常见的视觉表现手法,用于展示数据变化或者统计数字的增长过程,为用户带来动态的交互体验。这种特效通常由JavaScript实现,结合HTML和CSS来完成整个效果。在给定的压缩包中,...
有两个实现方法: 1、一个是字符串,获取字符串最大递增子集 2、对象是list集合,获取list集合中最大递增子集 3、同理简单改正 也可以实现,连续相同字符串的最长子集
CAD软件数字递增插件,在CAD中加载后即可使用。
标题中的“获取一个字符串中的数字组”是指从包含数字和非数字字符的字符串中提取连续的数字,并将它们作为整数处理。描述中提到的任务是输入一个字符串,例如"a123x456_17960? 302tab5876",从中找出所有的连续数字...
最长连续递增序列(LCIS, Longest Continuous Increasing Subsequence)问题是一个经典的计算机科学问题,常见于算法面试和在线编程挑战平台如LeetCode。这个问题旨在找出一个整数数组中的最长连续递增子序列的长度...
例如,创建一个递增数字框,即一个能够随着操作而自动递增显示数字的界面元素,这在某些应用中是非常实用的,如计数器、简单的数值输入控制等。本文将详细介绍如何在VB中实现这一功能。 ### 核心知识点:逆向使用...
数组的操作是C语言学习中的关键部分,特别是在解决各种算法问题时,如找到数组中的最长连续递增序列。这个问题涉及到数组遍历、比较以及动态记录最长序列的状态。 首先,我们需要理解什么是连续递增序列。在数组中...
数字递增复制,命令(MR),打开CAD用appload加载,自动递增数字,非常方便,有需要的可以试一下。。。
对于更复杂的数字串问题,如串中数的排列,需要进行分组分析。例如在首届“现代小学数学”邀请赛试题中,一个数列由1和1993交替开始,每次减少1,我们可以按每三个数一组来处理。第1993个数的位置可以通过除以3来...
Excel 表格中的数字递增是指在表格中输入一系列数字,并且这些数字按照指定的规律递增。例如,在一个表格中输入 1、2、3、4、5 等数字,每行增加 1。这种方式可以使用 Excel 的公式和函数来实现。 在 Excel 中,...
在一个数组中找出连续元素的最大值,时间复杂度o(n),空间复杂度o(n)
两个递增数字百分比.pptx,977b7197836c3ae.pptx
单调递增数字问题是一个经典的计算机科学问题,常出现在算法面试和编程挑战中,例如LeetCode。此问题的主要目标是找到小于或等于给定非负整数N的最大单调递增整数。单调递增意味着整数的每一位数字从左到右依次增大...