当前位置: 首页 > 编程笔记 >

查找数组是否包含C ++中一个不匹配的字符串

闻人浩波
2023-03-14
本文向大家介绍查找数组是否包含C ++中一个不匹配的字符串,包括了查找数组是否包含C ++中一个不匹配的字符串的使用技巧和注意事项,需要的朋友参考一下

假设我们有一个字符串s和另一个字符串数组A。我们必须查找该数组是否包含与当前长度不同的字符串有一个字符差异的字符串。假设字符串像“ banana”,而数组看起来像[“ bana”,“ orange”,“ banaba”,“ banapy”],则结果为true,因为有一个字符串banaba,这里只有一个字符是与香蕉不同。

为了解决这个问题,我们将遵循一些步骤-

  • 遍历给定的字符串s,并检查数组中的每个字符串,然后对arr中的每个字符串执行以下步骤-

    • 检查arr中的字符串与s的长度是否相同

    • 如果长度相同,则检查是否有任何单个字符不匹配,如果是,则返回true,否则返回false。

示例

#include<iostream>
#include<vector>
using namespace std;
bool hasOneCharMismatch(vector<string>arr, string s) {
   int n = arr.size();
   if (n == 0)
      return false;
   for (int i = 0; i < n; i++) {
      if (arr[i].size() != s.size())
         continue;
      bool difference = false;
      for (int j = 0; j < (int)arr[i].size(); j++) {
         if (arr[i][j] != s[j]) {
            if (!difference)
               difference = true;
            else {
               difference = false;
               break;
            }
         }
      }
      if (difference)
         return true;
   }
   return false;
}
int main() {
   vector<string> arr;
   arr.push_back("bana");
   arr.push_back("orange");
   arr.push_back("banaba");
   arr.push_back("banapy");
   if(hasOneCharMismatch(arr, "banana")){
      cout << "发现一个字符不匹配";
   }
   else{
      cout << "找不到一个字符不匹配";
   }
}

输出-

发现一个字符不匹配
 类似资料:
  • 我想解析一个字符串,看看它是匹配整个字符串还是子字符串。我试过这个: 但我的问题是:

  • 问题内容: 我正在尝试检测字符串是否包含至少一个存储在数组中的URL。 这是我的数组: 该字符串由用户输入并通过PHP提交。在确认页面上,我想检查输入的URL是否在数组中。 我尝试了以下方法: 无论输入什么,返回值始终为“找不到匹配项”。 这是正确的做事方式吗? 问题答案: 尝试这个。 如果要检查不区分大小写,请使用stristr()或stripos()。

  • 问题内容: 我有一个包含多个字符串的数组。我已经使用(请参阅下文)检查数组中是否存在某个字符串,但是我想检查字符串中是否有一部分字符串? 上面的代码只是检查数组中是否整体存在一个值,但是我想找到 问题答案: 这样尝试。 将包含具有匹配子字符串的字符串列表。 在Swift中,struct提供了filter方法,该方法将基于过滤文本条件来过滤提供的数组。

  • 问题内容: 我试图遍历2个数组,外部数组则比另一个数组更长。它将循环遍历第一个,如果第二个数组不包含该int,它将返回false。但是我不知道该怎么做。这是我到目前为止所拥有的: 运行时出现此错误: 我想知道是否可以不使用嵌套循环(如上)来完成。我知道我做错了,如果有人可以在此问题上提供帮助,那就太好了。我也不确定要在Java文档中寻找什么类。 问题答案: 您可以检查较大的数组是否包含较小数组中的

  • 问题内容: 这是一个聊天页面。我有一个。我有BADWORDS的数组:。我如何检查是否包含中的任何单词? 到目前为止,我有: 除非我这样做,否则当用户在列表中键入单词时,输出为NO!其次是!因此出于某种原因,代码会将其运行两次。 问题答案: 在不浪费时间和使用这些古老而又漫长的解决方案的情况下,最好的选择应该是: 如果这对您有用,请别忘了投票

  • 问题内容: 我有一张桌子来存储有关我的兔子的信息。看起来像这样: 我该如何找到喜欢胡萝卜的兔子?我想出了这个: 我不喜欢那个查询。一团糟。 作为专职兔子管理员,我没有时间更改数据库架构。我只想适当地喂兔子。有没有更可读的方法来执行该查询? 问题答案: 从PostgreSQL 9.4开始,您可以使用operator: 如果改用 jsonb 类型,甚至可以在键上为查询建立索引: __ 当然,作为专职兔