首页 > 代码库 > 字符串去重
字符串去重
1、问题描述
给出一串字符串,去掉重复的即可;
例:str = "abacdefabcde";
去重后:str = "abcdef";
算法思想:就是遍历一遍字符串,用一个alpha[]数组,将字符串的字符当做下标,出现一次后,将不再满足条件,保证了去重;
2、代码实现
#include<stdio.h> void main(void){ char str[] = "abacdefabcde"; char alpha[128] = {0}; //辅助空间,桶的思想 char res[80] = {0}; //存放去重后的结果字符串 int i; int t = 0; for(i = 0; str[i]; i++){ if(alpha[str[i]] == 0){ res[t++] = str[i]; alpha[str[i]]++; } } for(i = 0; i < t; i++){ printf("%c", res[i]); } printf("\n"); }
3、结果截图
4、算法分析
时间复杂度为:O(n);
本文出自 “wait0804” 博客,请务必保留此出处http://wait0804.blog.51cto.com/11586096/1900000
字符串去重
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。