给定一个字符串,去重(重复的字符只保留第一次出现的)

来源:互联网 发布:火球理财java面试题 编辑:程序博客网 时间:2024/06/07 00:23

源码(c++):

#include <iostream>#include <string>using namespace std;int main(){    string str;    cin>>str;    int a[256]={0, 0};    int strLen = str.size();    for(int i=0; i<strLen; ++i){        a[str[i]]++;    }    int i, j;    i=j=0;    for(int i=0; i<strLen; ++i){        if(a[str[i]]>=0){            a[str[i]] = -1;            swap(str[i], str[j]);            j++;        }    }    str = str.substr(0, j);    cout<<str<<endl;    return 0;}

输出:


0 0