C++字符串去重(遇到的最简单的写法)

  • Post author:
  • Post category:其他


输入一串字符,然后去重。

如:输入aaabbbbd;

输出应为abd;

#include<iostream>
#include<string>
using namespace std;
int main()
{
 int n;
 cin >> n;//n表示你要处理多少组
 string a;//定义字符串
 for (int i = 0; i < n; i++)
 {
  cin >> a;
  bool b[50] = { 0 };
  for (int j = 0; j < a.size(); j++)
  {
   if (b[a[j] - 'a'] == 0)
   {
    cout << a[j];
    b[a[j] - 'a'] = 1;//重复字符-'a'总是等于相同值,故重复字符对应的布尔值都为1;
   }
  }
  cout << "\n";
 }
}

将布尔值应用进去是关键。



版权声明:本文为weixin_44626943原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。