专栏首页weixuqin 的专栏leecode刷题(13) -- 字符串中的第一个唯一字符

leecode刷题(13) -- 字符串中的第一个唯一字符

leecode刷题(13) -- 字符串中的第一个唯一字符

字符串中的第一个唯一字符

描述:

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

案例:

s = "leetcode"
返回 0.

s = "loveleetcode",
返回 2.

注意事项:您可以假定该字符串只包含小写字母。


思路:

  1. 遍历字符串,取每个字符最早出现的位置;(charAt()方法)
  2. 根据该位置查找该字符首次出现的位置(index值)和最后出现的位置(lastindex值)是否相等,相等的话即为该元素只出现了一次,返回该字符位置的 index 值;如果不相等则继续查找下一个。如果遍历字符串后还是找不到 index 值相等的元素,则返回 -1。(indexOf()方法和lastIndexOf()方法)

代码如下

class Solution {
    public int firstUniqChar(String s) {
        char a = ' ';
        for(int i = 0; i < s.length(); i++){
            a = s.charAt(i);
            if(s.indexOf(a) == s.lastIndexOf(a)){
                return i;
            }
        }
        return -1;
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • leecode刷题(15)-- 验证回文字符串

    刚开始和上一题一样,我也没理解“回文字符串”是什么意思,后来想了下,“回文字符串”其实就是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就...

    希希里之海
  • redis 学习(5)-- 列表类型

    使用 lpush 更新,rpop、lpop 删除,lrange 做排序分页等。类似微博的发布信息流。

    希希里之海
  • SVN教程 -- 基于自己学习记录

    Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制系统。相较于 git ,svn 是集中式版本控制系统。

    希希里之海
  • Python | 6大数据类型方法归纳总结(上)

    在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

    LogicPanda
  • 大数据变现十日谈之二:数据交换价值

    我们曾反复提过,大数据产业的价值在于“洞悉世界”——消除不确定,变不定为肯定。在这个消除不确定的过程中,大数据解放了大量的生产力,这是大数据产业从经济学和社会学...

    刀刀老高
  • JavaScript闭包实例讲解

    闭包是JavaScript语言中的难点,很多刚入行的(包括我在内)一时对他很难理解,于是在网上各种搜罗有关闭包的学习资料,但是无数的文章介绍闭包,但都是了解一个...

    ZEHAN
  • 【Pygame 第6课】 面向对象的游戏设计

    上节课中,我们的飞机已经可以发射子弹了,尽管只有一颗。为什么我只加了一颗?试着多加几颗你就会发现,你得用好几个变量去分别记录它们的xy坐标,在主循环中判断每一颗...

    Crossin先生
  • “快到没朋友”的目标检测模型YOLO v3问世,之后arXiv垮掉了…

    一是以“快到没朋友”著称的流行目标检测模型YOLO推出全新v3版,新版本又双叒叕提升了精度和速度。在实现相近性能时,YOLOv3比SSD速度提高3倍,比Reti...

    量子位
  • Redis搭建主从&&集群(cluster)架构

    注意: Redis主从和mysql主从不一样,Redis主从不用事先同步数据,它会自动同步。因为master上设置有参数“slave-read-only yes...

    阿dai学长
  • 案例 | 全球500强霍尼韦尔签约法大大,电子合同赋能智慧物流

    《财富》全球500强、美国100强之一的美国互联工业企业霍尼韦尔(Honeywell),近期在隶属于安全与生产力解决方案部的供应链物流端正式引入了法大大电子合同...

    法大大电子合同

扫码关注云+社区

领取腾讯云代金券