数据结构 字符串 (第6天)

简介: 数据结构 字符串 (第6天)

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

返回字符串中第一个出现次数为一的下标。

ditc统计出现次数后遍历:

class Solution:
    def firstUniqChar(self, s: str) -> int:
        word_count = defaultdict(int)
        for x in s:
            word_count[x] += 1
        for idx,x in enumerate(s):
            if word_count[x] == 1:
                return idx
        return -1

383. 赎金信

输入两个字符串s1,s2

判断s1能不能通过s2中的字符拼凑出来。

使用Counter统计字符出现次数,只要s2中的字符出现次数比s1的次数多就可以。

class Solution:
    def canConstruct(self, ransomNote: str, magazine: str) -> bool:
        cnt1 = Counter(ransomNote)
        cnt2 = Counter(magazine)
        for k,v in cnt1.items():
            if k in cnt2 and cnt2[k] >= v:
                continue
            else:
                return False
        return True

242. 有效的字母异位词

给定两个字符串st ,编写一个函数来判断 t 是否是 s 的字母异位词。

注意:若 st 中每个字符出现的次数都相同,则称 st 互为字母异位词。

class Solution:
    def isAnagram(self, s: str, t: str) -> bool:
        return Counter(s)== Counter(t)
相关文章
|
8月前
|
XML JSON NoSQL
Redis的常用数据结构之字符串类型
Redis的常用数据结构之字符串类型
64 0
|
5月前
|
存储 缓存 NoSQL
redis数据结构-字符串
redis数据结构-字符串
52 1
|
7月前
|
存储 NoSQL Redis
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
94 1
|
2月前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
65 6
|
7月前
|
存储 JavaScript 前端开发
JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)
【6月更文挑战第25天】JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)。
48 2
|
8月前
题目----数据结构线性表----字符串逆序
题目----数据结构线性表----字符串逆序
41 1
|
7月前
|
存储 算法 Java
Java数据结构与算法:用于高效地存储和检索字符串数据集
Java数据结构与算法:用于高效地存储和检索字符串数据集
|
7月前
|
算法 Java
Java数据结构与算法:字符串匹配算法之暴力匹配
Java数据结构与算法:字符串匹配算法之暴力匹配
|
7月前
|
算法 Java
Java数据结构与算法:字符串匹配算法之KMP算法
Java数据结构与算法:字符串匹配算法之KMP算法
|
8月前
|
存储 索引 Python
Python数据结构——字符串
Python数据结构——字符串
62 0

热门文章

最新文章