剑指offer-字符串总结



前言

在写字符串类型题目时经常使用的一些String的API
在这里插入图片描述


题型

  • 双指针
    1、统计两个指针之间的字符出现的次数总概括
    2、变位词本质在该字符串中每个字符出现的次数都是一次—符合使用双指针进行求解,双指针配置hash表去记录出现的次数(剑指offer14、15
    3、统计字符出现的次数(剑指offer16[这题就是判断不重复的最长字符串长度])----不重复就是每个字符出现一次,使用双指针和hash表去统计就行了

  • 回文串
    aba,黄山落叶松叶落山黄;诸如此类的一些正着读和反着多都是一样的自负串,统一称为回文串
    1、这种题较为简单,直接使用头尾双指针的方式就能够解决
    2、注意一点就是熟练使用字符串中的一些API


方法

1、双指针,滑动窗口
2、头尾双指针
3、有些题目需要配合hash表进行统计出现的次数


总结

转载剑指
本章详细讨论了字符串及其相关的典型面试题。字符串是编程面试中经常出现的数据类型,熟练掌握字符串常用操作对应的函数是解决字符串面试题的前提。变位词和回文是很有意思的文字游戏,在与字符串相关的算法面试题中,它们出现的频率很高。如果两个字符串包含的字符及每个字符出现的次数都相同,只是字符出现的顺序不同,那么它们就是一组变位词。通常可以用一个哈希表来统计每个字符出现的次数,有了哈希表就很容易判断两个字符串是不是一组变位词。回文是一类特殊的字符串。不管是从前往后还是从后往前读取其每一个字符,得到的内容都是一样的。通常可以用两个指针来判断一个字符串是不是回文,要么两个指针从字符串的两端开始向中间移动,要么两个指针从中间开始向两端移动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值