【题目链接】

ybt 1130:找第一个只出现一次的字符
OpenJudge NOI 1.7 02:找第一个只出现一次的字符

【题目考点】

1. 字符串

2. 散列存储

【解题思路】

依据散列存储思想,设数组a,a[字母]表示该字母已出现的个数。比如a[‘b’]表示字母b出现的个数。
各字母的ascii码都处于0~128范围之内,数组a的长度设为128就够用了。
具体过程如下:

  • 输入字符串
  • 遍历字符串,统计各个字母出现的个数
  • 再次从前向后遍历字符串,判断当前字符是不是只出现过一次。如果是,输出该字符,程序结束。
  • 如果没输出过字符,输出no

【题解代码】

解法1:

#include <bits/stdc++.h>
using namespace std;
int main()
{int a[128] = {};//数组a[字母]表示该字母出现的次数,初始化为0 char s[100005];scanf("%s", s);int len = strlen(s);for(int i = 0; i < len; ++i)a[s[i]]++;for(int i = 0; i < len; ++i)//遍历字符串,找到第一个只出现一次的字符 {if(a[s[i]] == 1){printf("%c", s[i]);return 0;}}printf("no");//没找到 return 0;
}

信息学奥赛一本通 1130:找第一个只出现一次的字符 | OpenJudge NOI 1.7 02相关推荐

  1. 信息学奥赛一本通 2050:【例5.20】字串包含 | OpenJudge NOI 1.17 19:字符串移位包含问题

    [题目链接] ybt 2050:[例5.20]字串包含 OpenJudge NOI 1.17 19:字符串移位包含问题 [题目考点] 1. 字符串 2. 判断一个字符串是不是另一个字符串的子串(字符串 ...

  2. 信息学奥赛一本通 1925:【03NOIP普及组】麦森数 | OpenJudge NOI 4.4 1708:麦森数 | 洛谷 P1045 [NOIP2003 普及组] 麦森数

    [题目链接] ybt 1925:[03NOIP普及组]麦森数 OpenJudge NOI 4.4 1708:麦森数 洛谷 P1045 [NOIP2003 普及组] 麦森数 [题目考点] 1. 高精度 ...

  3. 信息学奥赛一本通 1180 | 1946:【09NOIP普及组】分数线划定 | OpenJudge NOI 1.10 05 | 洛谷 P1068 [NOIP2009 普及组] 分数线划定

    [题目链接] ybt 1180:分数线划定 ybt 1946:[09NOIP普及组]分数线划定 OpenJudge NOI 1.10 05:分数线划定 洛谷 P1068 [NOIP2009 普及组] ...

  4. 信息学奥赛一本通 1848:【07NOIP提高组】字符串的展开 | OpenJudge NOI 1.7 35:字符串的展开 | 洛谷 P1098 [NOIP2007 提高组] 字符串的展开

    [题目链接] ybt 1848:[07NOIP提高组]字符串的展开 OpenJudge NOI 1.7 35:字符串的展开 洛谷 P1098 [NOIP2007 提高组] 字符串的展开 [题目考点] ...

  5. 信息学奥赛一本通 1102:与指定数字相同的数的个数 | OpenJudge NOI 1.6 01

    [题目链接] ybt 1102:与指定数字相同的数的个数 OpenJudge NOI 1.6 01:与指定数字相同的数的个数 [题目考点] 1.一维数组 2. 计数 [题解代码] 解法1: #incl ...

  6. 信息学奥赛一本通 1068:与指定数字相同的数的个数 | OpenJudge NOI 1.5 12

    [题目链接] ybt 1068:与指定数字相同的数的个数 OpenJudge NOI 1.5 12:与指定数字相同的数的个数 [题目考点] 1. 循环统计 [题解代码] 解法1:用if语句 #incl ...

  7. 信息学奥赛一本通(1130:找第一个只出现一次的字符)

    1130:找第一个只出现一次的字符 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 48753     通过数: 18815 [题目描述] 给定一个只包含小写字母的 ...

  8. 信息学奥赛一本通 提高篇 第一部分 基础算法 第2章 二分与三分

    信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分 信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分_mrcrack的博客-CSDN博客_信息学奥赛一本通 ...

  9. 找第一个只出现一次的字符_剑指offer 字符流中第一个只出现一次的字符

    题目描述: 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是'g'.当从该字符流中读出前六个字" ...

最新文章

  1. vs c# release断点调试
  2. pytorch 随机打乱
  3. Python IDLE入门
  4. QT的QMultiSampleAntiAliasing类的使用
  5. ActiveMQ 消息持久化
  6. linux+tomcat+apache
  7. 当我们在谈论内存时,我们在谈论什么
  8. Linux 通过命令行下载、上传文件到百度网盘(bypy)
  9. 关于布隆过滤器的所有信息:利用Hash实现的索引方案
  10. LeetCode 115. 不同的子序列(动态规划)
  11. JavaScript网页特效---对联广告,网站对联广告
  12. 台达变频器485通讯接线图_台达变频器RS485通讯设置
  13. python画十字_Python解决十字消除棋
  14. 打开网页右下角广告栏慢慢出现,点击慢慢消失
  15. 怎么让自媒体文章原创度变高?原创度达到多少才算合格?
  16. 连续仨月霸占牛客榜首!京东T8呕心巨作:700页JVM虚拟机实战手册
  17. 派森学python_2019 年 1月 26 日 随笔档案 - 派森学python - 博客园
  18. 泰坦之路手机版怎么登陆服务器未响应,泰坦之旅一直登入不进去怎么办
  19. 服务器内存条能点亮显示器吗,上两根内存条显示器就不亮了
  20. 聊聊​WebRTC之音频会话管理

热门文章

  1. POJ 1850 Code
  2. Manjaro Linux 0.8.5 发布
  3. Apache设置文件缓存时间
  4. 程序员必须知道的15件事(转)
  5. 什么是云原生,跟云计算有什么关系?终于有人讲明白了
  6. 霍金去世,巨星陨落!谨以此文缅怀霍金
  7. STM32之高级定时器互补输出
  8. 阿里云首次公布年度3大战略方向,中台做厚,做强生态,还要再招5000人
  9. 【JEECG技术博文】Jeecg高级查询器
  10. Maven 手动安装Jar包的例子