| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4770 人关注过本帖
标题:求两个字符串的并集的c语言程序?
只看楼主 加入收藏
hpjjiangmali
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-8-28
结帖率:0
收藏
已结贴  问题点数:10 回复次数:36 
求两个字符串的并集的c语言程序?
写一个函数将任意给定的两个字符串取并集
 函数原型为:
     char *bingji(char *s1,char *s2);

若s1:  abcdde
  s2:  bcdfg

则返回的是  abcdefg
搜索更多相关主题的帖子: c语言程序 abcdefg 字符串 
2012-08-28 04:56
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:1 
直接用strcat()

★★★★★为人民服务★★★★★
2012-08-28 06:35
hpjhpj
Rank: 1
等 级:新手上路
帖 子:1
专家分:1
注 册:2012-8-28
收藏
得分:1 
如果有重复的字符,需要去除,这是难点之一。
2012-08-28 08:26
silent_world
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:258
专家分:1138
注 册:2011-9-24
收藏
得分:1 
hehe
2012-08-28 09:00
justNPC
Rank: 5Rank: 5
等 级:职业侠客
帖 子:101
专家分:311
注 册:2012-8-11
收藏
得分:1 
程序代码:
for(i=0;i<n;i++)
{
    a[i]=*s1;
    if(*s1==*s2) 
    {
        s1++;
        s2++;
        continue;
    }
    a[i+1]=*s2;
    s1++;
    s2++;
}

没编译过 随手写的,只考虑了两字符串等长的情况,不等长的情况的话,只需在循环里面加个判断
2012-08-28 10:29
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:1 
先搞清楚需求再写代码才好

授人以渔,不授人以鱼。
2012-08-28 10:32
justNPC
Rank: 5Rank: 5
等 级:职业侠客
帖 子:101
专家分:311
注 册:2012-8-11
收藏
得分:0 
不好意思,理解错lz意思,把对应位比较了...
2012-08-28 11:31
stophin
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:227
专家分:618
注 册:2010-3-26
收藏
得分:1 
最直接的办法就是把两个字符串用strcat拼成一个,
然后新建一个char数组存放结果(如果使用strcat(str1,str2),
那么可以用str2来存放结果,减少内存消耗,但前提是不能越界),
然后逐个检索拼成的那一个字串,将结果里面没有的字符放进结果末尾
但是在效率上的优化暂时还没想到好的办法
2012-08-28 17:22
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用stophin在2012-8-28 17:22:53的发言:

最直接的办法就是把两个字符串用strcat拼成一个,
然后新建一个char数组存放结果(如果使用strcat(str1,str2),
那么可以用str2来存放结果,减少内存消耗,但前提是不能越界),
然后逐个检索拼成的那一个字串,将结果里面没有的字符放进结果末尾
但是在效率上的优化暂时还没想到好的办法

这个思路有误,再想想?

授人以渔,不授人以鱼。
2012-08-28 19:57
wangxiang935
Rank: 3Rank: 3
来 自:南京
等 级:论坛游侠
帖 子:177
专家分:179
注 册:2012-7-11
收藏
得分:1 
各种高手~~~酱油飘过
2012-08-28 21:18
快速回复:求两个字符串的并集的c语言程序?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027960 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved