gpt4 book ai didi

c++ - 是 std::includes 中的错误还是我做错了什么

转载 作者:搜寻专家 更新时间:2023-10-31 00:25:51 25 4
gpt4 key购买 nike

C++ STL includes ( http://www.cplusplus.com/reference/algorithm/includes/ ) 测试排序范围是否包含另一个排序范围如果排序范围 [first1,last1) 包含排序范围 [first2,last2) 中的所有元素,则返回 true

void Test_STL_Includes() {
vector<char>secondRowInKeyboard{ 'a','A','s','S','d','D','f','F','g','G','h','H','j','J','k','K','l','L' };

sort(secondRowInKeyboard.begin(), secondRowInKeyboard.end());

string s("Alaska");
sort(s.begin(), s.end());

if (includes(secondRowInKeyboard.begin(), secondRowInKeyboard.end(), s.begin(), s.end()))
{
cout << "Matches";
}
else
{
cout << "Not Matches";
}

}

预期:“匹配”

实际:“不匹配”

我是不是犯了什么错误?

最佳答案

不匹配是因为“needle”包含两个a,而“haystack”只有一个a

另请参阅:What does std::includes actually do? ;另一种表述方式是 set intersection必须等于第二组。

关于c++ - 是 std::includes 中的错误还是我做错了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54622790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com