社区
C#
帖子详情
如何判断一组号码中是否有连续5次以上的连号,并删除
vivek
2008-04-03 04:56:25
比如文本中有一组数字:
1001
1002
1007
2001
2002
2003
2004
2005
2006
1067
1099
其中2001-2006超过5组的连续数据,如何编程判断并删除
...全文
324
8
打赏
收藏
如何判断一组号码中是否有连续5次以上的连号,并删除
比如文本中有一组数字: 1001 1002 1007 2001 2002 2003 2004 2005 2006 1067 1099 其中2001-2006超过5组的连续数据,如何编程判断并删除
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vivek
2008-04-15
打赏
举报
回复
谢谢 楼上朋友们的方法 我试试
zk011
2008-04-04
打赏
举报
回复
不考虑文件操作部分,仅从算法的角度的话,仅仅是一个思路,没有验证
public static List<int> ModifyList(int List<int> source)
{
List<int> result=new List<int>();
int LineNum=0;
while(true)
{
List<int> tempList=new List<int>();
Floater=LineNum;
tempList.Add(source[LineNum]);
while( LineNum<=source.Count-2)
{
if(source[LineNum]++== source[LineNum++])
tempList.Add(source[LineNum]);
else
{
break;
if( LineNum-Floater<5)
AppendToFinalList(tempList,result);
}
}
if(LineNum==source.Count-1)
break;
}
return result;
}
gobeyond2000
2008-04-04
打赏
举报
回复
string [] stringArray=new string(.....)//用于存放需要判断的队列
string [] stringArray_new = new string[90];//用于存放判断后的队列。
int j=0;//计数器
int num = stringArray[0].toInt();//前一个数
int num2 = stringArray[1].toInt();//后一个数
int k=0;//用于结果数组的下标。
for (int i=0;i < stringArray.length -1 ; i++)
{
// 判断相邻两个数据是否连号
if (num2 == (num + 1))
{
j = j + 1;
}
else
{
j = 0;
}
//取下一个数。
num = stringArray[i + 1].toInt();
num2 = stringArray[i + 2].toInt();
//如果连号,并连号超过五个数,结果数组下标回拨5,
if (j > 5)
{
k = k -5;
}
else
{
stringArray_new[k] = stringArray[i];
}
}
以上代码未经测试,仅是思路供参考。
huanguomin
2008-04-04
打赏
举报
回复
学习ing
michael1013
2008-04-03
打赏
举报
回复
1,将数字全排序。
2,遍历原数组
3,当指向第N个数字array[n]的时候,看一下a[n+5] == a[n] + 5
如果是,则删除a[n] ~ a[n+5]
如果是删除所有相连数字,要增加循环处理后面的“5”,让他自增到不满足条件或到末尾为止
virusswb
2008-04-03
打赏
举报
回复
循环一次,然后使用字典来存放编号和他出现的次数,泛型字典
Dictionary<string, int> dic = new Dictionary<string, int>();
Xzoth
2008-04-03
打赏
举报
回复
用 正则表达式
whoami333
2008-04-03
打赏
举报
回复
循环。用个arraylist,如果两个数字相邻就写入,arraylist.count>5就...
CAD快捷键文档
一、概述: 所谓的快捷命令,是AutoCAD为了提高绘图速度定义的快捷方式,它用一个或几个简单的字母来代替常用的命令,使我们不用去记忆众多的长长的命令,也不必为了执行一个命令,在菜单和工具栏上寻寻匿匿。所有...
经典SQL脚本大全
│ 比较第一与第二个字符串,
是否
有
连续
的5个字符相同.sql │ 生成查询的模糊匹配字符串.sql │ 简繁转换.sql │ 统计一个表
中
某个字符出现最多的字母.sql │ 非法字符串处理.sql │ ├─第04章 │ │ 4.1.5 在各种...
Sqlserver2000经典脚本
-格式化.sql │ 得到一个字符串在另一个字符串
中
出现的
次
数.sql │ 数字转换成十六进制.sql │ 比较第一与第二个字符串,
是否
有
连续
的5个字符相同.sql │ 生成查询的模糊匹配字符串.sql │ 简繁...
小白量化彩票实战(4)彩票特征
号
码
重
号
、邻
号
、连
号
和表格展示
连
号
:
连续
的
号
码
情况,例如:9-10,23-24等。 这些程序设计比较简单,我们直接给出源代码。 程序
中
给出了DataFrame数据的文件读取,数据处理等等知识点,编写其他程序也能用上。 #购买<零基础搭建量化投资系统&...
【C++保姆级入门】 最大连
号
jj++) 接着我们从0开始循环,n 注意这里有个测试点,若n=5 数组a输入 1 1 1 1 1 则之前的功劳全部作废(我们之前的最小连
号
是从2开始的) 所以我们这一
次
循环便不能按照规矩的循环,我们从1开始,直接跳过c[jj][0] ...
C#
110,534
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章