没分了,请教个字符串string判断算法技巧,谢谢
string strbuffer == /*从某处获得*/
//固定定义的string
string apple = "苹果"
string ban = "香蕉"
string egg = "鸡蛋"
求两种情况的判断
1、判断strbuffer是不是固定定义的这堆东西
2、判断strbuffer是不是"火车、汽车、汽水、大便、shit"这些关键字,但这些关键字不已string事先命名
请教大家,除了拿strbuffer来逐个if去判断关键字是否true,把判断条件全写完(累~)以外,是否还有其它方法?
感谢感谢,抱歉我用了不雅的关键字,但只有这两个关键字才能表达我现在的心情了...
[解决办法]
我见过查看某个数字是否在某个集合里面,用“^”,可以很方便而且更迅速的找到对应的值
如果能把那一堆字符串也转换成数字,那找的速度应该可以加快不少,而且不用if then的判断
[解决办法]
感觉这是 个 字符串包含问题啊
用用 strstr库函数 不就得了
给你一个列子吧:
/* strstr example */#include <stdio.h>#include <string.h>int main (){ char str[] ="This is a simple string"; char * pch; pch = strstr (str,"simple"); strncpy (pch,"sample",6); puts (str); return 0;}
[解决办法]
set
hash_set
unordered_set
sorted vector + lower_bound
查找太多方法了,STL现成的东西也很高效