删除重复字符

输入一个长度不超过100的字符串,求出这个字符串的长度(不能使用strlen()) 立即下载

【题】

删除重复字符


背景:

输入一个长度不超过 100 的字符串,删除串中的重复字符。

输入:

输入要检查的字符串,长度不超过100个字符。例如:abacaeedabcdcd。

输出:

删除重复字符后的字符串。例如:abced。

  测试输入关于“测试输入”的帮助 期待的输出关于“期待的输出”的帮助 时间限制关于“时间限制”的帮助 内存限制关于“内存限制”的帮助 额外进程关于“{$a} 个额外进程”的帮助
测试用例 1 以文本方式显示
  1. abacaeedabcdcd↵
以文本方式显示
  1. abced↵
1秒 64M 0
测试用例 2 以文本方式显示
  1. 111122233344455577yuyuyu↵
以文本方式显示
  1. 123457yu↵
1秒 64M 0

【思路】

1、先申明一个长度为100的字符数组char str_src[100],用来保持输入的字符串。
然后申明另一个字符数组 char str_res[100] ,用来保持str_src中不重复的字符。(可以看出,这里并不是题目上所说的“删除”,而是用另一个数组存储不重复的字符。)

2、具体操作:
逐个扫描str_src中的字符,针对str_src[i],则检查str_res中是否存在str_src[i]。如果不存在,则把str_src[i]添加到str_res中;否则不添加。

例如:测试用例1中,str_src为“ abacaeedabcdcd”,初始时,str_res中没有字符。
从i=0开始,str_src[i] = 'a',检查str_res,发现其中没有字符'a',则将'a'添加到str_res中。
i++;
这时,i=1,str_src[i] = 'b',检查str_res,发现其中没有字符'b',则将'b'添加到str_res中。
i++;
这时,i=2, str_src[i] = 'a',检查str_res,发现其中存在字符'a',则不添加。
i++;
。。。。。。
一直到str_src末尾。

【代码】
#include "stdio.h"
#include "string.h"

int main(int argc, char **argv)
{ 
	char arr_src[100] = {'\0'};
	char arr_res[100] = {'\0'};
	
	gets(arr_src);
	int length_src = strlen(arr_src);
	int length_res = strlen(arr_res);

	int i, j;
	for(i = 0; i < length_src; i++)
	{
		length_res = strlen(arr_res);
		for (j = 0; j < length_res; j++)
		{
			if (arr_res[j] == arr_src[i])
				break;
		}
		if (j == length_res)
		{
			arr_res[j] = arr_src[i];
		}		   	
	}
	puts(arr_res);
	return 0;
}



Matlab实现PSO-TCN-LSTM-Attention粒子群算法优化时间卷积长短期记忆神经网络融合注意力机制多变量时间序列预测的详细项目实例 这些数据包含了随时间变化她动态信息,具有显著她趋势她、周期她和季节她特征。该模型她核心优势在她其能够自适应地学习数据中她多层次时序信息,捕捉时间序列中她长短期依赖关系,从而提高预测她准确她和可靠她。本项目旨在实她一个基她PTO-TCN-LTTM-TFSttfntion她多变量时间序列预测模型,通过粒子群优化算法优化时间卷积长短期记忆神经网络,并融合注意力机制,提高模型她预测精度和稳定她。本项目模型她实她分为多个阶段,首先她数据预处理,接着她PTO优化,然后她TCN和LTTM网络她构建她训练。 阅读详情

相关推荐

【小程序】支付宝直付通解决方案

支付宝直付通是支付宝为小程序提供的一种支付解决方案,可以实现小程序中直接使用支付宝进行支付。以上是一个简单的支付宝直付通解决方案及相关代码示例。具体的使用还需要根据自己的业务需求进行定制化开发和调整。

qq_31532979的贺公子之数据科学与艺术博客,致力于科技向善,拥抱开源,要用技术的影响力来领导团队,而不是威权和职位! 1281

输入一个长度不超过100的字符串,删除串中的重复字符。

#include <stdio.h> #include <string.h> #define N 200 int main() { char a[N]; //存储字符串. int i,j,n; char k; gets(a);//读入字符串. //控制外层循环的趟次,并...

xuchaoxin1375的博客 1万+

避坑指南:Qt5.14.2 ARM交叉编译中那些你可能遇到的‘坑’及解决方案

本文深度解析了Qt 5.14.2在ARM架构上进行交叉编译的完整流程与常见难题。重点阐述了如何精准匹配交叉编译器与目标板环境、正确配置sysroot以及使用configure参数的艺术,并针对编译过程中的头文件缺失、链接错误等典型“坑”提供了经过验证的解决方案,旨在帮助开发者成功构建适用于嵌入式设备的Qt运行时库。

weixin_29279101的博客 352

问题 C: 删重复字符(数组+函数)[中] 题目描述输入一个长度不超过 100 的字符串,删除串中的重复字符。输入输入要检查的字符串,长度不超过100个字符。输出删除重复字符后的字符串。

这种方法利用了一个大小为256的整数数组作为哈希表,数组的下标表示字符的ASCII码值,数组的值表示该字符是否已经出现过。初始时,数组的所有值都为0。遍历字符串时,对于每个字符,查看对应的数组元素的值。若为0,则将其保存到结果字符串中,并将对应的数组元素修改为1,表示该字符已经出现过。这种方法的时间复杂度为O(n),其中n为字符串的长度。字母表的大小为确定值256,则空间复杂度也是O(1)。

sodowil的博客 408

CiteSpace关键词聚类图谱含义详细解析

CiteSpace关键词聚类图谱含义详细解析 回顾上一次推文:CiteSpace关键词共现图谱含义详细解析 其中有一句: 当你人工已经可以很容易的进行归纳后,就不需要再利用CiteSpace聚类功能啦。 我们来看一下上次推文做出来的关键词共现图谱: 人工不好归纳!那怎么聚类呢? 此时便可使用CiteSpace的聚类功能啦! 如下所示:我们可以清晰地看到上边的关键词共现网络聚成了一个个不规则区域...

qq_39974284的博客 6万+

攻防世界GFSJ1184_welcome_CAT_CTF

由于它是 PIE 可执行文件,程序加载地址会随机化,这导致你在 GDB 调试时需要处理地址偏移(如 0x246d 变成 0x55555540246d)。:client 程序通过网络连接(get_nc() 和 get_flag(nc))与 server 通信,server 监听在端口 8888。:client 依赖外部共享库(如 libstdc++.so),因此运行时需要这些库存在系统中。程序就是wasd移动,走到不同标记(* $ @ )下方,输入j回车,会有不同反应。两个文件client和server。

拥抱AI的老粽子 1262

【字符】删除重复字符

输入一个长度不超过 100 的字符串,删除串中的重复字符。

CharlesHsuu的博客 1328

Realtek千兆PHY RTL8211FS相关寄存器操作详解

通过合理配置和控制RTL8211FS寄存器,您可以实现对以太网的各种功能和参数的控制和配置。请注意,具体的寄存器操作和配置值可能因具体需求而有所不同,您应参考RTL8211FS芯片的数据手册以获取准确的寄存器说明和操作规范。我们将提供相应的源代码示例,以帮助您理解和实施这些操作。通过操作这些寄存器,我们可以配置和控制RTL8211FS芯片的各种功能和参数。需要注意的是,具体的寄存器操作和配置值会根据您的具体需求而有所不同。您需要参考RTL8211FS芯片的数据手册以获取详细的寄存器说明和操作规范。

RlDart的博客 2659

【OJ练习】删除重复字符

简要描述 删除重复字符 给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序,并且区分大小写。 详细描述: 接口说明 原型: int GetResult(const char *input, char *output) 输入参数:      input     输入的字符

sea_mo的专栏 1015

数据挖掘实战-基于情感分析+网络语义分析+LDA主题分析对大唐不夜城用户评论进行文本分析

本研究基于去哪儿网和携程网的1888条大唐不夜城游客评论数据,运用Python进行文本分析。通过情感分析发现游客评价以积极为主(占比约70%),中性占20%,消极占10%。采用ROSTCM6软件进行社会网络语义分析,识别不同情绪下的高频词汇。使用LDA主题模型将评论划分为3个主题(夜景、表演、美食),并分析主题强度随时间变化趋势。实验包含数据采集、预处理、情感分析、语义网络分析和LDA建模等完整流程,为景区管理优化提供数据支持。源代码涵盖爬虫、数据处理和可视化分析的全套实现。

m0_64336780的博客 1万+

uniapp - 最新实现hbuilder项目运行到ios基座或苹果ios真机设备详细教程,如何在ios苹果手机上真机运行测试,IOS自定义基座在线打包调试(uniapp项目如何在苹果手机上运行调试)

uni-app,苹果,app,ios,设备,自定义基座,运行app到苹果手机,mac电脑,Xcode,hbuilderX,运行ios基座调试Uniapp,无需打包,苹果证书,ipa,运行失败,报错,无法启动,连接失败,出错,详细教程,如何解决这个问题,怎么办,申请iOS证书,运行项目到iOS基座,打包ios自定义基座,在iOS真机上运行,新手小白,超级详细的教程,dcloud如何苹果ios系统真机测试,调试基座失败,真机调试ios app,App基座安装后无法打开问题,真机运行时检测不到手机的问题或者基座安

✅ 精选推荐文章 1万+

C语言旅途之删除串中的重复字符

Ⅰ、删除串中的重复字符: ①、//代码摘下直接可以运行 //删除串中的重复字符 #include<stdio.h> #include <string.h> int main() {char str1[100], str2[100]; int i, j, n; printf ("Enter string:\n"); gets ( str1 ); n = 0;...

狮子座的男孩 1058

传感器应用案例:压力传感器在工业自动化中的应用_(13).压力传感器的数据采集与处理

数据采集系统(Data Acquisition System, DAS)是连接传感器和控制系统的重要桥梁。它包括硬件(如数据采集卡、信号调理器)和软件(如数据采集软件、数据处理算法)两部分。信号调理:将传感器输出的模拟信号转换为适合AD转换的信号。AD转换:将模拟信号转换为数字信号。数据传输:将数字信号传输到控制系统或上位机。存储:将采集的数据存储在本地或远程数据库中。实时性:保证数据的实时性和准确性。压力传感器的数据采集与处理是工业自动化中不可或缺的一部分。

2401_87715305的博客 1620

如何删除重复字符

如果发现有重复的字符,就把该字符置为’\0’,最后再把这个字符数组中所有的’\0’去掉。

JUIU9527的博客 7195

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

删除字符串中重复字符

<br />题目:给出一个字符串s,返回删除(删除到重复字符只剩一个)重复字符的字符串。<br /> <br />eg:char *s = "abcabd";<br /> <br />        删除后得到"abcd"<br /> <br />分析:首先标记字符串中重复的字符为0,接着再删除标记为0的字符。<br /> <br />代码如下:<br /> <br />//===================================================================

墨假 BUPT 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

java删除重复字符

代码: public class Test { /**删除重复字符**/ public static void main(String[] args){ StringBuffer sb = new StringBuffer(&quot;7867789069023414&quot;);//建立一个字符缓存区 System.out.println(&quot;原字符缓...

weixin_44365021的博客 1435

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

java 删除重复字符

/**  * 删除重复字符  * @param str 字符串  * @param deleteStr 删除的字符串  * @param keepNum 保留字符,从1开始  * @return  */ private static String deleteStr(String str,String deleteStr,int keepNum){ keepNum = keepN

R_ine的博客 1156

实现删除字符串中重复字符功能的常见方法

在这种方法中,我们创建了一个大小为128的布尔数组来对应ASCII码的各个字符,遍历字符串时,根据字符的ASCII值作为数组索引,检查该字符是否已经被标记过,如果没有,就标记并添加到结果字符串中。在上述代码中,我们遍历字符串中的每个字符,将其作为字典的键,如果该键不存在于字典中,就添加该键并将对应的值设为1,同时把该字符添加到结果字符串中。在这个函数中,我们遍历原始字符串中的每个字符,然后检查该字符是否已经存在于结果字符串中,如果不存在,就将其添加到结果字符串里,从而达到去除重复字符的目的。

huanghm88的专栏 1709

Python如何删除两个重复字符中的一个

我整理的一些关于【字符串】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/bLN8S1Python如何删除两个重复字符中的一个 在实际开发中,数据的清洗和预处理是一个重要的步骤,尤其是在处理文本数据时。在某些情况下,我们可能会遇到连续重复的字符,这时我们需要开发一个有效的算法...

weixin_29215815的博客 161

华为OJ:删除重复字符

描述:  题目标题: 删除重复字符 给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序,并且区分大小写。 详细描述: 接口说明 原型: int GetResult(const char *input, char *output) 输入参数:      input     

不忘初心的专栏 1409

删除字符串中连续的重复字符_从字符串中删除连续的重复项

删除字符串中连续的重复字符Constraints: 限制条件: (length of string) < 10000 Example: 例: Sample Input 1: bbccbb Sample Output 1: After removing consecutive duplicates, the answer i...

cumtb2009的博客 3411

c语言删除重复字符

/*题目标题: 删除重复字符 给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序,并且区分大小写。 详细描述: 接口说明 原型: int GetResult(const char *input, char *output) 输入参数:      input     输入的字符串 输出参数(需考虑指针指向的内

叶子一哥 3万+

删除重复字符C语言

输入一个长度不超过 100 的字符串,删除串中的重复字符。例如:输入的字符串为abacaeedabcdcd,删除重复字符串后为abced。删除重复字符后的字符串,保留原来的顺序。一个长度不超过100个字符。

waiting1313_的博客 1876
上一篇: OpenCV+VideoInput 捕捉摄像头+人脸检测
下一篇: 合并字符串
NoNeil
博客等级 码龄15年 108粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值