当前位置: 首页 > news >正文

Leetcode 387. First Unique Character in a String

Problem

Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1.

Algorithm

Use two lists: one list is used to count the letters in “s”; the other list is the position where the letter first appears. Then find the smallest position of the letters appear once.

Code

class Solution:def firstUniqChar(self, s: str) -> int:sCnts = [0] * 26sStart = [0] * 26cnts = 0for c in s:sCnts[ord(c) - ord('a')] += 1if sCnts[ord(c) - ord('a')] == 1:sStart[ord(c) - ord('a')] = cntscnts += 1index = -1for i in range(26):if sCnts[i] == 1 and (index < 0 or index > sStart[i]):index = sStart[i]return index
http://www.lryc.cn/news/321118.html

相关文章:

  • c++ 自己实现一个迭代器
  • HarmonyOS NEXT应用开发—图片压缩方案
  • 深入理解nginx的请求限速模块[下]
  • 王者归位:Kafka控制器组件解析
  • XmlHttpRequest responseType: ‘stream‘ 图片代理服务器
  • 手写 UE4中的 TArray
  • Flink实时写Hudi报NumberFormatException异常
  • Dataset与DataLoader、transform
  • 海豚调度系列之:认识海豚调度
  • MateBook 14s 2023款 集显 触屏(HKFG-16)原厂Win11系统
  • zookeeper快速入门(合集)
  • 鸿蒙App开发学习 - TypeScript编程语言全面开发教程(上)
  • Java语言: JVM
  • 下拉树级带搜索功能
  • 【数组、字符串】算法例题
  • docxTemplater——从word模板生成docx文件
  • Linux权限维持后门及应急响应
  • git相关指令
  • Apache Doris 2.1 核心特性 Variant 数据类型技术深度解析
  • accessToken
  • nodeJs 学习
  • STM32利用AES加密数据、解密数据
  • C语言技能数(知识点汇总)
  • Vue.js+SpringBoot开发企业项目合同信息系统
  • Linux Shell中的echo命令详解
  • php 页面中下载文件|图片
  • 2024年企业经济管理与大数据国际会议(ICEEMBD 2024)
  • 数新网络助阵哈工大国家级项目,共绘数智化新篇章,打造大数据法务平台
  • React+umi+dva 项⽬实战-lesson6
  • Vue el-table 合并单元格