剑指offer 面试题50 第一个只出现一次的字符

数字电路逻辑与设计实验一 门电路逻辑功能及测试 (1)选二输入四异或门电路 74LS86,按图 1-8 接线,输入端 1、2、4、5 接逻辑开 关(S1~S4),输出端 A、B、Y 接电平显示发光二极管.用六反相器(非门)按图 1-11 接线,输入 80KHz 连续脉冲,用双踪示波器测输入, 输出相位差,计算每个门的平均传输延迟时间的 tpd 值。测试不同的输入组合:对门电路进行全面的测试,尝试不同的输入组合,包括各种可能的逻辑状态。检查门电路的输入:确认门电路的输入是否正确,并且输入信号的电平符合门电路的规格要求。确保输入信号的稳定性和准确性。 阅读详情

题目描述
在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).

用一个大小为52的数组记录每个字母出现的次数,然后在用一遍遍历,找出第一个只出现一次的字符。复杂度O(n)

class Solution {
public:
    int FirstNotRepeatingChar(string str) {
        // 大小写共52个字母
        vector<int> map_table(52,0);
        for (int i=0;i<str.length();i++) {
            if((int)str[i]>='a') {
                map_table[(int)str[i]-'a'+26]++;
            } else {
                map_table[(int)str[i]-'A']++;
            }
        }
        for (int i = 0; i < str.length(); i++)
        {   
            int index=0;
            if((int)str[i]>='a') {
                index=(int)str[i]-'a'+26;
            } else {
                index=(int)str[i]-'A';
            }
            if(map_table[index]==1) {
                return i;
            }
        }
        return -1;
    }
};
Python爬虫实战:如何抓取旅游论坛上的帖子、旅行攻略和评论内容 无论是知名的旅游网站,还是地方性的旅游讨论区,用户发布的旅行贴文、攻略和评论往往包含着大量的宝贵信息。本文将详细介绍如何使用Python编写一个爬虫,抓取旅游论坛上的帖子、旅行攻略和评论内容,涵盖从获取页面内容、解析数据到处理动态加载等各个方面的技术。从基本的请求和网页解析,到动态加载页面的处理,再到数据存储和反爬虫技巧,我们详细讲解了抓取旅游论坛数据的全过程。通过本文的介绍,你可以将所学的爬虫技术应用到其他类似的网站抓取任务中,为后续的数据分析、机器学习等任务提供丰富的数据源。在这种情况下,传统的。 阅读详情

相关推荐

【AutoDL + Langchain-Chatchat】从零构建高效本地 RAG 知识库问答系统:实战保姆级教程(含避坑指南)

本文详细阐述如何在AutoDL云平台,如何利用Langchain-Chatchat构建高效的本地RAG知识库问答系统,并深入解析RAG架构。从环境搭建到实战部署,从问题排查到性能优化,提供一份全面实用的指南,助力开发者快速构建智能问答应用。

拾光夕拾的博客 1803

剑指offer面试题50(java版):第一个只出现一次的字符

welcome to my blog 剑指offer面试题50(java版):第一个只出现一次的字符 题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 思路 使用哈希表实现, 扫描两次字符串, 第一次统计次数, 第二次找到第一个出现次数为1的字符串 笔记 为什么要用Li...

littlehaes的博客 518

前沿数据解析 | 麻省理工-斯坦福-丰田研究中心电池数据集:AI驱动下的电池寿命早期预测

本文解析了麻省理工、斯坦福与丰田研究中心联合发布的电池数据集,展示了AI驱动下的电池寿命早期预测技术。通过分析124个商用锂离子电池的完整生命周期数据,研究团队仅用前100次循环数据即可准确预测电池报废时间,为电动汽车电池管理提供革命性解决方案。数据集包含LFP/石墨体系电池的详细测试记录,结合差分容量分析和梯度提升树模型,预测精度显著提升。

weixin_26950847的博客 529

《剑指offer—面试题50:第一个只出现一次的字符》

《剑指offer—面试题50:第一个只出现一次的字符》 注明:仅个人学习笔记 import java.util.HashMap; import java.util.Map; /** * * * 第一个只出现一次的字符 * * 在字符串中,找出第一个只出现一次的字符 如输入“abaccdeff” 输出‘b’ * * ...

步履不停的橙子 315

从DC到DCG:手把手教你搭建物理感知综合流程(含DEF文件处理避坑指南)

本文详细介绍了从Design Compiler(DC)过渡到DC Topographical(DCT)和DC Graphical(DCG)的完整操作框架,特别针对DEF文件处理提供避坑方案。通过环境准备、工具升级、DEF文件处理、DCG综合配置等步骤,帮助开发者高效应对28nm以下工艺节点的物理感知综合挑战,显著提升时序收敛效率。

weixin_27966471的博客 377

HID报告描述符实战解析:从Usage到Item的完整设计流程

本文深入解析了HID报告描述符的设计流程,从核心概念Usage(用途定义)入手,详细阐述了如何通过Item(条目)的三种角色——全局、局部与主干,构建出能被系统正确识别的设备“说明书”。文章以标准USB鼠标和键盘为例进行实战拆解,并介绍了使用Report ID与自定义设备等进阶设计方法,帮助开发者掌握这一实现USB设备即插即用的关键技术。

weixin_29230865的博客 282

剑指Offer面试题50:第一个只出现一次的字符

题目一: 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 解题思路:这里应该是考察set,map,unordered_set,unordered_map,multiset,multimap等容器的用法。 set和multiset会根据特定...

freeygh的博客 209

CMOS传输门(互补开关)实战指南 | 设计优化 + 常见问题解析

本文深入解析CMOS传输门(互补开关)的设计优化与常见问题,涵盖导通特性、版图设计、高频应用及混合信号设计等关键领域。通过实测数据和优化技巧,帮助工程师解决衬底连接、信号完整性等实际问题,提升数字和模拟混合信号设计的效率与可靠性。

weixin_29229989的博客 161

【剑指offer】面试题50.第一个只出现一次的字符

解题思路 先统计出每个字符的出现次数 再按照s中字符的顺序进行遍历 代码 class Solution { public: char firstUniqChar(string s) { char res=' '; map<char, int> hashMap; for (auto it=s.begin();it!=s.end();it++) { ++hashMa...

Do Better 321

思科—OSPF多区域配置实验

实验目的:配置OSPF多区域,使得不同网段的PC互相ping通。 网络拓扑如下: R0的配置 Router>en Router#conf t Router(config)#int g0/1 Router(config-if)#ip add 192.168.1.1 255.255.255.0 Router(config-if)#no shut Router(config-if)#exit Router(config)#int g0/0 Router(config-if)#ip add 192.168.

m0_46237205的博客 1万+

验证(uvm常见问题)--子类和父类的句柄和对象问题

sv中的子类和父类 在sv中,有如下两个类,child继承于parent。然后在test module中,正确转换的方法如下面所示。其中c1,c2,p1 都指向了同一个子类的对象c1。总结如下: 一个子类的对象是包括子类的成员变量,方法和父类的成员变量,方法。 子类的句柄c1可以直接赋值给父类的句柄p1,此时p1只可以访问父类的成员变量和方法,或者子类的虚方法,比如下面调用p1.display是...

q876507447的博客 7631

【剑指offer】面试题50 第一个只出现一次的字符

题目描述 在一个字符串(0&amp;amp;amp;lt;=字符串长度&amp;amp;amp;lt;=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 解题分析 我们能想到最容易的办法就是用当前字符依次的和后边的字符进行比较,如果没有重复的那么就是我们想要的结果,但是这样比较的时间复杂度是O(n2)。不足以AC。 因为题目可以转化为每个字符出现的次数,那么我们是不是可选一个容...

爱喝舒化奶的博客 209

innovus:NRDB-2276 special net route layer与NanoRouteMode route layer冲突问题解决方法

NanoRouteMode中设置绕线层次2-6,但是被动到的special net有8-11的preferred route layer,这个层次可能是create_route_type+set_ccopt_property -net_type 定义的。二者绕线层次范围有冲突,导致在调整过这条net后再绕线就会提示失败。然后再下route_design 等route命令去绕别的net。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?

m0_61544122的博客 1099

剑指Offer LeetCode 面试题50. 第一个只出现一次的字符

剑指Offer LeetCode 面试题50. 第一个只出现一次的字符

TrueDei 1205

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

剑指Offer——面试题50:第一个只出现一次的字符

面试题50:第一个只出现一次的字符 题目一:字符串中第一个只出现一次的字符。 在字符串中找出第一个只出现一次的字符。如输入"abaccdeff",则输出’b’ #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int TABLE_SIZE=256...

愿你慢慢变强的博客 305

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【剑指offer】面试题50:第一个只出现一次的字符

题目一:字符串中第一个只出现一次的字符。在字符串中找出第一个只出现一次的字符。解法步骤如下(选择HashMap做):(1)新建HashMap,名称为map,key对应的是字符,value对应出现次数,初始为1;对输入字符串先进行判断处理。(2)遍历字符串中字符,判断当前HashMap中key值是否包含字符:没有就放入map;有,修改value为原value+1再放入map。(3)遍历字符串,对每个...

sinat_32109533的博客 253

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

《剑指offer》 面试题50. 第一个只出现一次的字符

题目描述 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 示例: s = “abaccdeff” 返回 “b” s = “” 返回 " " 限制: 0 <= s 的长度 <= 50000 哈希数组(最优) 想想字符ASCII码最大也就不超过256,并且都是正整数,因此开一个整型数组。下标代表字符对应的字符ASCII码,值就是字符出现的次数。 class Solution { public char firstUniqChar(String

小李的博客 235

Java详解剑指offer面试题50--第一个只出现一次的字符

Java详解剑指offer面试题50–第一个只出现一次的字符 找出字符串中找出第一个只出现一次的字符,比如输入“abacceff",则输出'b' 要想知道某个字符是不是只出现了一次,必须遍历字符串的每个字符。**因此可以先遍历一次,统计每个字符出现次数。再遍历一次,遇到某个字符出现字符为1就立即返回。**统计每个字符出现次数,可以用哈希表,不过如果输入中都是ASCII码,那么使用0-255表示即可。这样使用一个int[] count = new int[256]就能代替哈希表了,以count[some

快乐李同学的博客 622

【剑指offer】面试题50:第一个只出现一次的字符

50. 第一个只出现一次的字符 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 s = "abaccdeff" 返回 "b" s = "" 返回 " " map class Solution { public: char firstUniqChar(string s) { map<char, int>count; for(char c:s){ count[c]++; .

阿华冲冲冲的博客 253

《剑指offer》面试题50:第一个只出现一次的字符(字符串)

题目:字符串中第一个只出现一次的字符。在字符串中找出第一个只出现一次的字符。如输入abaccdeff,则输出b。 思路: 思路1:暴力求解,从前到后依次判断每个字符是否只出现一次,时间复杂度o(n^2),空间复杂度o(1); 思路2:用空间换时间。这个思路可行的前提是题目中所说的“字符”指的是ascii编码的字符。0-127是7位ASCII码的范围,是国际标准。128-255称为扩展ASCII码...

qq_43502142的博客 587

剑指offer之面试题50:第一个只出现一次的字符

面试题50:第一个只出现一次的字符 题目:字符串中第一个只出现一次的字符。 在字符串中找出第一个只出现一次的字符。如输入"abaaadeff"。则输出’b’。 思路:遍历两边字符串 第一遍:将字符串中每个字符的出现次数记录再hashMap中 第二遍:找出第一个出现次数为一次的字符。 代码实现: package Question50; import java.util.HashMap; import java.util.Map; public class T01 { public stat

小鑫的博客 300

剑指 Offer(第2版)面试题 50:第一个只出现一次的字符

剑指 Offer(第2版)面试题 50:第一个只出现一次的字符

ProgramNovice的博客 559

牛客剑指Offer面试题50:第一个只出现一次的字符(面试题2:字符流中第一个只出现一次的字符)

题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 输出描述: 如果当前字符流没有存在出现一次的字符,返回#字符。 思路(哈希表) 一.STL中map实现哈希表 哈希表键值对为   字符:出现次数 1.每读取一个字符便保存至字符...

ljmiiianng的博客 212

剑指Offer-链表-面试题50:第一个只出现一次的字符

面试题50:第一个只出现一次的字符 题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 代码: class Solution { public: int FirstNotRepeatingChar(string str) { if(str.si...

linyuhan3232的博客 298

剑指Offer——面试题50. 第一个只出现一次的字符

这道题考的是哈希表 所以我们直接创建HashMap,HasMap中有一个 这两个方法,两种方法都可以使用,我用了第一个,当有重复的时候将其值改写为false package LeetCode.剑指offer; import java.util.HashMap; public class FirstUniqChar { public char firstUniqChar(String ...

Rabbit-Sir的博客 206

剑指offer 面试题50:字符流中第一个只出现一次的字符

题目描述:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 解法: 使用哈希表occurance[256] ;  初始化occurance为-1,当遇到某个字符并且字符的occurance[ch]==-1时候,将其置为字符出现的位置i...

别说话写代码的博客 639
上一篇: 剑指offer 面试题52 两个链表的第一个公共节点
下一篇: 剑指offer 面试题38 字符串的排列
wenkun97
博客等级 码龄10年 15粉丝 139原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值