[每天一题]删除字符串中的重复字符(不要使用额外空间)
来源:互联网 发布:mac中断进程 编辑:程序博客网 时间:2024/06/05 03:12
Design an algorithm and write code to remove the duplicate characters in a string without using any additional buffer.NOTE: One or two additinal variables are fine. An extra copy of the array is not.
算法:
1,检查是否重复的字符被找出!
2,跳过重复的字符,更新不是重复的字符。
#include<iostream>
using namespace std;
void removedup(char str[10]);
void main()
{
char s[10]="abercobie";
for(int i=0;i<10;i++)
cout<<s[i];
removedup(s);
for(int i=0;i<10;i++)
cout<<s[i];
}
void removedup(char str[])
{
if(str==NULL) return;
int len=10;
if(len<2)return;
int i,j;
int tail=1;//用于记录所有unique的字符
for(i=1;i<len;i++)
{ for(j=0;j<tail;j++)
if(str[i]==str[j]) break;
if(j==tail)
{
str[tail]=str[i];
tail++;
}
}
str[tail]=0;
}
- [每天一题]删除字符串中的重复字符(不要使用额外空间)
- [每天一题]判断字符串里否是都是独一无二的字符(不要用额外空间)
- 去除字符串中的重复字符,算法不使用额外缓冲。如abbc->abc
- 删除字符串中的重复字符
- 删除字符串中的重复字符
- 删除字符串中的重复字符
- 删除字符串中的重复字符(字符串为ASCII)
- 设计算法并写出代码移除字符串中重复的字符,不能使用额外的缓存空间。注意: 可以使用额外的一个或两个变量,但不允许额外再开一个数组拷贝。
- Perl: 删除字符串中的重复字符
- 删除一个字符串中的重复字符
- 实现一个算法来判断一个字符串中的字符是否唯一(即没有重复).不能使用额外的数据结构。 (即只使用基本的数据结构)
- 判断字符串中有无重复字符,不使用额外的数据结构
- 1.3 设计一个算法移除字符串中的重复字符,算法不使用额外缓冲。并对你的算法设计测试用例。
- 不使用额外空间字符串去重
- 算法系列(一) 删除字符串中的相同字符片段
- 字符移位(不能额外申请空间)
- 每天小练笔5-删除重复字符
- 删除字符串中的重复字符---no aditional buffer
- Debian6 无线驱动安装
- OO设计原则 — Single Responsibility Principle:OO设计的SRP单一职责原则
- [每天一题]判断字符串里否是都是独一无二的字符(不要用额外空间)
- 未来居民健康档案编码以身份证号识别
- error C2683: “dynamic_cast”:“XXX”不是多态类型
- [每天一题]删除字符串中的重复字符(不要使用额外空间)
- vc9 不时出现 Microsoft Incremental Linker已停止工作
- 3D旋转的球
- 学古筝
- 被误解的C++_汉尼拔
- ORACLE RAC的搭建
- 敏捷的项目启动-尽早启动!
- Just enough(刚刚好)的软件开发文档什么样?
- ISTQB AL-TA/TTA连载系列02:问题驱动的软件测试设计