好的,这就是我一直在尝试做的,请纠正我,如果我错了我试图检查myarray是否包含char abcd。我这样做的想法是什么:
char* myarray[] = {
"hello",
"wooorld",
"hi"};
if(myarray->Contains(abcd))
{
//do stuff
}
我的问题是,有更好的方法吗?
答案 0 :(得分:6)
一种方法是使用std::string
和std::vector
std::find
算法:
std::vector<std::string> strs{"hello","wooorld","hi"};
std::string toFind = "abcd";
if (std::find(strs.begin(), strs.end(), toFind) != strs.end())
{
std::cout <<" abcd exist in vector of strings";
}
答案 1 :(得分:0)
如果您对 C风格字符串的数组进行排序,还有其他“更好”查找文本的方法。
仅举几例:
二进制搜索
斐波那契搜索
您需要澄清“更好”这个词。对于小容器,线性搜索比二分搜索表现更好。