OK、これは私がやろうとしていたことです。間違っている場合は修正してください。myarray に char abcd が含まれているかどうかを確認しようとしています。私がこのようにすることを考えていること:
char* myarray[] = {
"hello",
"wooorld",
"hi"};
if(myarray->Contains(abcd))
{
//do stuff
}
私の質問は、それを行うより良い方法はありますか?
それを行う1つの方法は、アルゴリズムを使用する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";
}
C スタイルの文字列の配列を並べ替える場合、テキストを見つける 他の"より良い"方法があります。
二分探索フィボナッチ
探索
「より良い」という用語を明確にする必要があります。小さなコンテナーの場合、線形検索は二分検索よりも優れたパフォーマンスを発揮します。