[去哪儿网]首个重复字符

时间限制:3秒 空间限制:32768K 热度指数:33999

本题知识点: 查找

题目描述

对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。

给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。

测试样例:

"qywyer23tdd",11
返回:y
 1 #include<iostream>
 2 #include<vector>
 3 class FirstRepeat {
 4 public:
 5     char findFirstRepeat(string A, int n) {
 6         // write code here
 7         vector<int> Avec;
 8         char ch;
 9
10         for(int i=0;i<128;i++)
11             Avec.push_back(0);//一共有128个字符
12
13         for(int j=0;j<n;j++)
14             {
15               int index=A[j];
16               Avec[index]++;
17               if(Avec[index]==2)
18                   {
19                      ch=A[j];
20                      break;
21
22               }
23         }
24         return ch;
25     }
26
27 };
时间: 2024-10-19 12:30:04

[去哪儿网]首个重复字符的相关文章

去哪网实习总结:开发定时任务(JavaWeb)

本来是以做数据挖掘的目的进去哪网的,结构却成了系统开发... 不过还是比较认真的做了三个月,老师很认同我的工作态度和成果... 实习马上就要结束了,总结一下几点之前没有注意过的变成习惯和问题,分享给大家. 同时打个广告:去哪网内审部招JavaWeb开发实习生,时间非常自由,每周一天.周六周日甚至都可以,时间充裕的小伙伴给我留言啊,挣个零花钱,还能长点经验....(保研的.想工作的大四狗最合适不过了...) 其实定时任务很简单,js其实也做过,就是Timer类的 Timer.schedule(Ti

去哪网实习总结:定时发送邮件(JavaWeb)

本来是以做数据挖掘的目的进去哪网的,结构却成了系统开发... 不过还是比较认真的做了三个月,老师很认同我的工作态度和成果... 实习马上就要结束了,总结一下几点之前没有注意过的变成习惯和问题,分享给大家. 同时打个广告:去哪网内审部招JavaWeb开发实习生,时间非常自由,每周一天.周六周日甚至都可以,时间充裕的小伙伴给我留言啊,挣个零花钱,还能长点经验....(保研的.想工作的大四狗最合适不过了...) 接上一篇:http://blog.csdn.net/mmc2015/article/det

2015年华为校招机试题和代码实现(分解字符串,拼音转数字,去除重复字符并排序,等式变换)

再来一套2015年的华为机试题. 第一题(60分): 按要求分解字符串,输入两个数M,N:M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0.例如:输入2,8, "abc" ,"123456789",则输出为"abc00000","12345678","90000000" 分析思路: 容易题 1.获得字符串的长度length后,判断与要输出位数N的大小,大于N的话,直接printf前N位字符,然

LintCode-最长无重复字符的子串

给定一个字符串,请找出其中无重复字符的最长子字符串. 样例 例如,在"abcabcbb"中,其无重复字符的最长子字符串是"abc",其长度为 3. 对于,"bbbbb",其无重复字符的最长子字符串为"b",长度为1. 挑战 O(n) 时间 分析:遍历该字符串,每遍历一个字母时,利用map去找该字母最近一次出现是什么时候,中间这一段便是无重复字符的字符串. 代码: class Solution { public: /** * @

leetcode——Longest Substring Without Repeating Characters 求链表中无重复字符的最大字串长度(AC)

mnesia在频繁操作数据的过程可能会报错:** WARNING ** Mnesia is overloaded: {dump_log, write_threshold},可以看出,mnesia应该是过载了.这个警告在mnesia dump操作会发生这个问题,表类型为disc_only_copies .disc_copies都可能会发生. 如何重现这个问题,例子的场景是多个进程同时在不断地mnesia:dirty_write/2 mnesia过载分析 1.抛出警告是在mnesia 增加dump

求一字符串最长不重复字符子串的长度【Java 版】

一. 前言 最近学习有点断断续续,整理的一些知识点要么不完整,要么完全没搞懂,不好拿上台面,还是先在草稿箱躺着吧.偶尔在浏览大牛博客http://coolshell.cn的时候,发现大牛业余时间也在做编程训练http://coolshell.cn/articles/12052.html,作为一名想励志成为码农的测试猿,更应该在当下多利用业余时间,训练自己的编码能力,掌握好基础.那就开始吧,https://oj.leetcode.com/problems/ 二.正文 1.题目:Longest Su

【方案】去哪儿网徐磊:如何利用开源技术构建日处理130亿+的实时日志平台?

转自:http://mp.weixin.qq.com/s?__biz=MzIzMzEzODYwOA==&mid=2665284466&idx=1&sn=2b06a529821734e36e26e642424f24fc&scene=2&srcid=0527p3qISp6dFqGg8iLIYgRF&from=timeline&isappinstalled=0#wechat_redirect [本文系互联网技术联盟(ITA1024)原创首发,转载或节选内容

去哪儿网大数据流处理系统:如何使用Alluxio(前 Tachyon)实现300倍性能提升

概述 互联网公司同质应用服务竞争日益激烈,业务部门亟需利用线上实时反馈数据辅助决策支持以提高服务水平.Alluxio(前Tachyon)作为一个以内存为中心的虚拟分布式存储系统,在大数据系统性能提升以及生态系统多组件整合的进程中扮演着重要角色.本文将介绍去哪儿网(Qunar)的一个基于Alluxio的实时日志流的处理系统,Alluxio在此系统中重点解决了异地数据存储和访问慢的问题,从而将生产环境中整个流处理流水线的性能总体提高了近10倍,而峰值时甚至达到300倍左右. 目前,去哪儿网的流处理流

[LeetCode]无重复字符的最长子串

给定一个字符串,找出不含有重复字符的最长子串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 无重复字符的最长子串是 "abc",其长度为 3. 示例 2: 输入: "bbbbb" 输出: 1 解释: 无重复字符的最长子串是 "b",其长度为 1. 示例 3: 输入: "pwwkew" 输出: 3 解释: 无重复字符的最长子串是 "wke",其长度为 3.   请注