c++ 信奥编程 1130:找第一个只出现一次的字符

cpp 复制代码
#include <iostream>
#include <string> 
using namespace std; 
int main()
{
	string s;
	bool flag=false;
	int lt[26]={0}; 
	cin >> s;
	for(int i=0;s[i]!='\0';i++)
	{ 
		lt[s[i]-'a']++;
	} 
	
	for(int i=0;i<s.size();i++)
	{
		if(lt[s[i]-'a']==1)
		{
			cout << s[i] << endl;
			flag=true;
			break;
		}
	}
	if(flag==false)
		cout << "no" << endl;
    return 0;
} 

本题解析:本题用到了一个技巧,那就是小写字母只有26个,然后遍历字符串,定义一个整数数组,用来存储从小写a开始的字母出现的次数。如果找到第一个就break,结束循环。另外还需要设置一个标识位。用来做标记。

本题用到的知识有:字符可以参与数字计算,字符串的遍历,一维数组的应用,同时对for循环的用法,以及终止循环的条件等相关知识。

相关推荐
摇滚侠8 小时前
IDEA 新建 JavaWeb 项目 Tomcat 和 Servlet
java·ide·intellij-idea
sheeta19988 小时前
LeetCode 每日一题笔记 日期:2026.06.02 题目:3633. 最早完成陆地和水上游乐设施的时间 I
笔记·算法·leetcode
码客日记8 小时前
Spring Boot 全局跨域配置与前后端联调避坑
java·spring boot·后端
为何创造硅基生物8 小时前
C++ 类的 static 成员函数
c++
王哈哈^_^8 小时前
【源码教程+数据集】农作物分类检测数据集 10712 张,农作物分类检测系统实战教程
人工智能·算法·yolo·目标检测·计算机视觉·毕业设计·数据集
兰令水9 小时前
leecodecode【回溯子集】【2026.6.4打卡-java版本】
java·开发语言·深度优先
bubiyoushang8889 小时前
基于 C/C++ 的 MQTT 物联网通信协议实现
c语言·c++·物联网
牛油果子哥q9 小时前
【C++ const 】全场景深度精讲:修饰规则、底层常量折叠、指针 / 引用 / 成员函数实战、易错坑点与工程代码实现
开发语言·c++
bIo7lyA8v9 小时前
算法优化中的多线程数据一致性问题的技术8
算法