删除字符串中重复的字符
2023-01-10
阅读(1216)

问:如何删除重复字符c语言
- 答:#include<stdio.h>
int main(void)
{
char s[100];
int i, j, n, k;
printf("请输入一串有重复字符的字符串:\n");
gets(s);
for (n = 0; s[n] != '\0'; n++);
for (i = 0; i < n ; i++)
{
for (j = k = i + 1; j < n ; j++)
if (s[j] != s[i])
s[k++] = s[j];
s[k] = '\0';
}
printf("去掉重复字符后结果为:\n");
puts(s);
}
问:如何用函数删除一个字符串里面的重复的字符,只保留一个?
- 答:算法如下:
新建一个字符数组,然后逐个字符遍历你的示例字符串,对每个字符,都在字符数组中查找,没找到就添加到字符数组中,找到就不添加。 - 答:简单的循环就可以了
#include <stdio.h>
#include <string.h>
void main( )
{int i,j;
char txt[]="DDFFEEFF";
for(i=1;i<strlen(txt);i++){
for(j=i-1; j>=0 ; j--){
if(txt[i] == txt[j]){
strcpy(&txt[i], &txt[i+1]);
j=-1;i--;
}
}
}
puts(txt);
}
问:Python编程题35--删除字符串中的所有相邻重复项
- 答:给定仅由小写字母组成的非空字符串,存在一个重复项删除操作,其会选择两个相邻且相同的字母,并删除它们。
请在字符串上反复执行重复项删除操作,直到无法继续删除,并在完成所有重复项删除操作后返回最终的新字符串。