剑指 offer 字符串算法题:第一个只出现一次的字符

news/2024/11/23 13:00:13/

题目描述:在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。

分析:

哈希计数,首先遍历一遍字符串,若哈希中存在该字符则设置为false,说明重复,否则设置为true。然后可以二次遍历字符,若哈希值为true即可,或者map会记住插入顺序,遍历map找到值为true的即可。

indexOf + lastIndexOf,遍历字符串,当前字符首次出现和最后一次出现的位置相同的即为第一个只出现一次的字符。

求解:

// 哈希 + 两次遍历
function firstUniqChar1(s: string): string {const map = new Map<string, boolean>();const len = s?.length;for (let i = 0; i < len; i++) {const char = s[i];if (map.has(char)) {// 哈希中存在该字符,说明出现超过一次,设为falsemap.set(char, false);} else {map.set(char, true);}}for (let i = 0; i < len; i++) {const char = s[i];if (map.get(char)) {// 二次遍历哈希中该字符对应值为 truereturn char;}}// // 由于map能记住键的原始插入顺序// for (let [key, value] of map.entries()) {//     if (value) {//         return key;//     }// }return ' '; // 找不到返回单空格
}// indexof + lastIndexOf
function firstUniqChar2(s: string): string {const len = s?.length;for (let i = 0; i < len; i++) {const char = s[i];if (s.indexOf(char) === s.lastIndexOf(char)) {return char;}}return ' '; // 找不到返回单空格
}


http://www.ppmy.cn/news/646916.html

相关文章

计算机音乐苹果铃声,iPhone实用技巧:怎么将抖音上的背景音乐制作成手机铃声-苹果手机铃声设置...

抖音已经成为目前热门的APP&#xff0c;上面有很多优秀的音乐作品。当我们遇上了喜欢的音乐&#xff0c;怎么做成手机铃声呢&#xff1f; 需要安装的APP 1.抖音短视频APP 2.库乐队GarageBand APP(苹果自带&#xff0c;如果删除了&#xff0c;可重新在App Store里下载) 3.音乐剪…

苹果库乐队怎么玩_自制手机铃声(苹果)

这篇大的分两部分 第一部分是铃声的制作 第二部分是铃声的设置 铃声的制作介绍了两种方法 第一种是用库乐队&#xff0c;在手机上 第二种是用爱思助手&#xff0c;在电脑上 要进行铃声的设置的前提是 制作好铃声并导入到手机铃声的库里面 同样 第一部分里介绍的两种方法 都是为…

苹果手机怎么设置铃声?不用电脑,轻松搞定

苹果手机怎么设置铃声&#xff1f;都说最快毁掉一首歌的方法是把它设置为闹铃&#xff0c;而最能证明我们喜欢一首歌的方法就是把它设置为手机铃声。很多安卓手机都可以直接设置铃声&#xff0c;并且随时更换&#xff0c;但是在苹果手机上好像不能这么做&#xff0c;很多网上的…

苹果手机如何制作铃声

苹果手机上的铃声都是默认的系统铃声&#xff0c;那么我们想要吧铃声换为自己喜欢的铃声该怎么做呢&#xff1f; 1. 首先在苹果官网下载默认的软件 因为苹果手机是自己独立的ios 系统&#xff0c;我们的操作必须经过iTunes 。 下载地址&#xff1a;http&#xff1a;//www.app…

苹果手机设置导入喜欢的音乐作为铃声

对于果粉来说&#xff0c;不能root就有些遗憾&#xff0c;我经常会因为苹果手机没有NFC要经常带卡头疼&#xff0c;本人比较喜欢自己喜欢的音乐片段可以作为音乐铃声&#xff0c;但是苹果手机有些盾不能翻&#xff0c;还有补充一点的是经常听人们说的手机root什么的&#xff0c…

iPhone设置手机铃声

iPhone设置手机铃声 开始之前&#xff0c;我们先要修改一些iTunes的设置项 首先启动iTunes , 如果你的电脑上还没有安装iTunes&#xff0c;请到苹果的官方网站下载 1.显示菜单栏(如果已经显示则可跳过此步)&#xff1a; 右击目录&#xff0c;再点击“显示菜单栏” 2.显示…

使用iMazing给苹果手机设置专属来电铃声

使用iOS设备只能用自带的提示铃声&#xff1f;因为苹果系统的封闭性大家都普遍接受了&#xff0c;但真的不能设置专属铃声了吗&#xff1f;答案是否定的&#xff0c;肯定有人想到在App Store下载专门换铃声的APP。但这是需要收费的。 那有没有设置专属铃声不用收费的方法呢&am…

10秒搞定,苹果iPhone手机不用电脑换铃声,这个方法真的炒鸡简单!

新老司机朋友们晚上好&#xff0c;隔壁老王又来和大家见面了~ 最近很多朋友都在吐槽苹果手机不能直接在手机上设置铃声&#xff0c;每次想设置一个自己喜欢的歌曲作为铃声还要连接电脑&#xff0c;也太麻烦了吧。 如果没有电脑呢&#xff1f;这个看似很简单的问题在IOS封闭的…