社区
C++ Builder
帖子详情
从头搜索字符串可以用pos方法。从尾呢?
hsn1982
2005-07-04 10:20:25
从字符串末尾开始搜索用什么方法
...全文
269
7
打赏
收藏
从头搜索字符串可以用pos方法。从尾呢?
从字符串末尾开始搜索用什么方法
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
F117p
2005-07-04
打赏
举报
回复
原理也是将字符串反一下。
利用STL的:
reverse;
代码:
AnsiString str;
...
int L=str.Length();
char *tmp=new char[L];
strcpy(tmp,str.c_str());
using namespace std
reverse(tmp,tmp+L);//反转
str=tmp;
...
str.Pos(...
僵哥
2005-07-04
打赏
举报
回复
上面这个速度很慢,建议使用char数组+指针来操作,那样会快很多。
僵哥
2005-07-04
打赏
举报
回复
__int64 SwapPos(AnsiString strSource,AnsiString strFind)
{
__int64 pPos,pSLen,pFLen;
pPos=0;
pSLen=strSource.Length();
pFLen=strFind.Length();
if(pSLen==pFLen&&strSource==strFind)
return 1;
if(pSLen<pFLen)
return 0;
for(__int64 i=0;i<pSLen;i++)
{
AnsiString strTmp=strSource.SubString(pSLen-pFLen+1-i,pFLen);
if(strTmp==strFind)
{
pPos=pSLen-pFLen+1-i;
break;
}
}
return pPos;
}
僵哥
2005-07-04
打赏
举报
回复
{
__int64 pPos,pSLen,pFLen;
pPos=0;
pSLen=strSource.Length();
pFLen=strFind.Length();
if(pSLen==pFLen&&strSource==strFind)
return 1;
if(pSLen<pFLen)
return 0;
for(__int64 i=0;i<pSLen;i++)
{
AnsiString strTmp=strSource.SubString(pSLen-pFLen+1-i,pFLen);
if(strTmp==strFind)
{
pPos=pSLen-pFLen+1-i;
break;
}
}
return pPos;
}
F117p
2005-07-04
打赏
举报
回复
既然是只是单独的字符串,
理论上这点开销对于系统来说,无关痛痒
如果实在是很大的串,可以考虑将原串分割成N个小串,再进行操作。
Waiting4you
2005-07-04
打赏
举报
回复
没有,把两个字符串反过来再用Pos方法
僵哥
2005-07-04
打赏
举报
回复
如果要查找的源串相当大是,那么楼上的操作开销可不蛮小哦。
POJ 2385 Apple Catching(DP)
POJ 2385 Apple Catching 题意: 解题过程: AC代码: POJ 2385 Apple Catching 题目传送门 题意: 一头牛要接苹果,一共有两棵树,牛刚开始在第一棵树下,每次可以在两棵树之间移动,给出你T秒内下落苹果的树的编号(1或2),问你最多移动K次,能够接到最多的苹果是多少。...
【题解】Apple Catching POJ - 2385 ⭐⭐【dp 奇偶性】
Apple Catching POJ - 2385 有两棵APP树,编号为1,2.每一秒,这两棵APP树中的其中一棵会掉一个APP.每一秒,你可以选择在当前APP树下接APP,或者迅速移动到另外一棵APP树下接APP(移动时间可以忽略不计),但由于却乏锻炼,你最多移动W次.问在T秒内,你最多能收集多少个APP.假设你开始站在1号APP树下. Input 第1行:两个整数T(1 < = T&...
Apple Catching POJ - 2385
牛爱吃苹果是一个鲜为人知的事实。农夫约翰的田里有两棵苹果树,每棵树上都结满了苹果。贝茜够不到树上的苹果,所以她必须等着苹果掉下来。然而,她必须在空中接住它们,因为苹果落地时会碰伤(没人想吃碰伤的苹果)。贝西吃东西很快,所以她抓到的苹果几秒钟就能吃完。 每分钟,两棵苹果树中的一棵都会掉下一个苹果。贝茜很有经验,如果她站在一棵树下,苹果从树上掉下来,她就能抓住苹果。贝茜虽然能在两棵树之间很快地走(不...
POJ 2385 Apple Catching
Apple Catching Time Limit: 1000MS Memory Limit: 65536K Description It is a little known fact that cows love apples. Farmer John has two apple trees (which are conveniently numbered 1 and 2) in his fi...
动规-POJ【2385】Apple Catching
题目链接:POJ【2385】Apple Catching 题目大意:1、2两棵树上往下落苹果 树下一头牛 初始位置在第一棵树下 牛的移动所消耗时间不计(即可以瞬移) 但只能移动W次 一共掉T次苹果 问牛最多可以吃几颗 解题思路:二维数组 把原本第一维省去了 因为苹果只可能从1或2树上掉落 可以用下标(移动次数)%2+1 来记录 第一维记录移动次数 第二维记录掉落苹果数目 故存在j (※注
C++ Builder
13,871
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章