OJ删除重复字符串

来源:互联网 发布:软件技术开发合同 编辑:程序博客网 时间:2024/05/22 05:02

题目标题:

删除重复字符给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序,并且区分大小写。

详细描述:

接口说明

原型:

int GetResult(const char *input, char *output)

输入参数:

 input     输入的字符串

输出参数(指针指向的内存区域保证有效):

output    输出的字符串

返回值:

    0         成功     -1        失败及异常

举例:

输入: abadcbad,那么该单词中红色部分的字符在前面已经出现过。

则:输出abdc,返回0。

#include<iostream>#include<stdio.h>#include<string.h>using namespace std;int GetResult(const char *input, char *output) {    int i, j, k = 0;    int length;    bool flag;    if (input == NULL || output == NULL)        return -1;    length = strlen(input);    for (i = 0; i < length; i++) {        flag = true;        for (j = 0; j < i; j++) {//小于已经比对的数量足够了            if (input[i] == output[j])                flag = false;        }        if (flag)            output[k++] = input[i];    }    output[k] = '\0';    puts(output);    getchar();//puts多一个空格    return 0;}int main() {    char str_input[10];    char str_output[10] = { "0" };    cin >> str_input;    GetResult(str_input, str_output);    return 0;}
0 0
原创粉丝点击