阅读量:0
在C语言中,可以使用一个新的字符串数组来存储去重后的字符。具体方法如下:
- 遍历原始字符串,逐个字符判断是否在新的字符串数组中存在。
- 如果不存在,则将该字符添加到新的字符串数组中。
- 最后将新的字符串数组作为去重后的结果。
下面是一个示例代码:
#include <stdio.h> void removeDuplicates(char* str) { int hash[256] = {0}; // 用于标记字符是否已经出现过 int currentIndex = 0; for (int i = 0; str[i]; i++) { if (hash[(int)str[i]] == 0) { str[currentIndex] = str[i]; currentIndex++; hash[(int)str[i]] = 1; } } str[currentIndex] = '\0'; } int main() { char str[] = "hello world"; removeDuplicates(str); printf("String after removing duplicates: %s\n", str); return 0; }
运行上述代码后,将输出去重后的字符串:“helo wrd”。