版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jingmin52296358al/article/details/86062642
2.归并两个有序字符串,要求输出不能有重复字符(数据结构上做过N遍的Merge函数) |
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void getMerge(char *s1,char *s2,char *c)
{
int i=0,j=0,k=0;
while(i<strlen(s1)&&j<strlen(s2))
{
if(s1[i]<s2[j])
{
c[k++]=s1[i++];
}
else if(s2[j]<s1[i])
{
c[k++]=s2[j++];
}
else if(s1[i]==s2[j])
{
c[k++]=s1[i];
i++;j++;
}
}
while(i<strlen(s1))
c[k++]=s1[i++];
while(j<strlen(s2))
c[k++]=s2[j++];
c[k]='\0';
}
int main()
{
char s1[200],s2[200];
char c[400];
scanf("%s",s1);
scanf("%s",s2);
getMerge(s1,s2,c);
printf("%s",c);
return 0;
}