标签:

字符串

题目:

字符串旋转:
给定两字符串A和B,如果能将A从中间某个位置分割为左右两部分字符串(可以为空串),并将左边的字符串移动到右边字符串后面组成新的字符串可以变为字符串B时返回true。

例如:如果A=‘youzan’,B=‘zanyou’,A按‘you’‘zan’切割换位后得到‘zanyou’和B相同,返回true。
再如:如果A=‘abcd’,B=‘abcd’,A切成‘abcd’和’'(空串),换位后可以得到B,返回true。

示例1

输入:“youzan”,“zanyou”
返回值:true

示例2

输入:“youzan”,“zyouan”
返回值:false

示例3

输入:“nowcoder”,“nowcoder”
返回值:true

反思:

旋转字符串这道题目有一个非常巧妙的解法,由于是根据第一个字符串从中间某个位置切割之后根据移位来得到的

  • 那么假设A=“abcd”,则A+A = “abcdabcd”
  • 如果B满足条件,那么B一定属于A+A里面的一个子串

用到的知识点:

字符串、子串

代码:

import java.util.*;public class Solution {public boolean solve (String A, String B) {if(A==null||B==null||A.length()<2||B.length()<2||A.length()!=B.length()){return false;}return (A+A).contains(B);}
}

[牛客算法总结]:旋转字符串相关推荐

  1. 牛客题霸 [旋转字符串]C++题解/答案

    牛客题霸 [旋转字符串]C++题解/答案 题目描述 字符串旋转: 给定两字符串A和B,如果能将A从中间某个位置分割为左右两部分字符串(都不为空串),并将左边的字符串移动到右边字符串后面组成新的字符串可 ...

  2. 牛客算法周周练2 B Music Problem(DP,抽屉原理,二进制拆分)

    链接:https://ac.nowcoder.com/acm/contest/5203/B 来源:牛客网 题目描述 Listening to the music is relax, but for o ...

  3. 牛客题霸 [将字符串转化为整数] C++题解/答案

    牛客题霸 [将字符串转化为整数] C++题解/答案 题目描述 实现函数 atoi .函数的功能为将字符串转化为整数 提示:仔细思考所有可能的输入情况.这个问题没有给出输入的限制,你需要自己考虑所有可能 ...

  4. 牛客题霸 [找到字符串的最长无重复字符子串] C++题解/答案

    牛客题霸 [找到字符串的最长无重复字符子串] C++题解/答案 题目描述 给定一个数组arr,返回arr的最长无的重复子串的长度(无重复指的是所有数字都不相同). 题解: i和j两个指针分别指不重复子 ...

  5. 牛客题霸 [反转字符串] C++题解/答案

    牛客题霸 [反转字符串] C++题解/答案 题目描述 写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串.(字符串长度不超过1000) 题解: 有reverse现成的翻转函数,直接套进去就可 ...

  6. 牛客题霸 [ 旋转数组的最小数字] C++题解/答案

    牛客题霸 [ 旋转数组的最小数字] C++题解/答案 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素. NOT ...

  7. 牛客题霸 [ 旋转数组] C++题解/答案

    牛客题霸 [ 旋转数组] C++题解/答案 题目描述 一个数组A中存有N(N&gt0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A ...

  8. 牛客算法周周练11 A.切题之路 签到题

    链接:https://ac.nowcoder.com/acm/contest/6046/A 来源:牛客网 题目描述 众所周知,SD省有一个可爱的妹子,叫做rqy(rqy天下第一可爱!不接受反驳,抱走r ...

  9. 牛客算法周周练11A - 切题之路(阅读理解)

    链接:https://ac.nowcoder.com/acm/contest/6046/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6553 ...

最新文章

  1. iOS开发OC基础:Xcode中常见英文总结,OC常见英文错误
  2. mysql远程连接设置_MySQL远程连接设置
  3. PHP redis秒杀返回结果,php结合redis实现高并发下的抢购、秒杀功能
  4. 改进版1--编译目录下代码
  5. http抓包实战 pdf_抓包实战 | 浏览器里的HTTP请求到底是如何完成的?
  6. linux之我常用的20条命令(之一)
  7. 如果计算机是中国人发明的,那编程代码很可能就应该这样写!
  8. generator.xml mysql_generatorConfig-mysql.xml中连接数据库的正确书写方式。
  9. 用计算机制作简谱,雅乐简谱免费版
  10. C# GIF图片的分解以及合成
  11. 《千与千寻》细节解读
  12. matlab怎么做跳动的桃心曲线,用matlab画跳动的爱心
  13. 织梦搜索页是那个php,修改织梦DEDECMS搜索页支持dede标签调用的方法
  14. 一个好玩的编程小游戏—— 母牛生小牛
  15. Groovy探索之MOP 十五 方法名的动态性(2)
  16. 进入2.0阶段!从阿里大鱼买断军事大V看内容平台的生态之争
  17. 设置css手机屏幕 media all,手机屏幕自适应之css写法@media
  18. uniapp实现微信小程序支付功能
  19. 2020-11-05 Win10自带虚拟机 Hyper-V使用方法
  20. 1万条数据大概占多大空间_圆通内鬼泄露40万条个人信息背后:不仅快递,你的简历也被卖了-科技频道...

热门文章

  1. kotlin 异常错误汇总
  2. 【干货】企业邮箱外贸开发信退信高,警惕被列入黑名单!
  3. java tab标签_js-tab选项卡
  4. 第13章 管理身份和身份验证
  5. core java 英文版
  6. join left loke mysql_MySQL 使用经验
  7. 博后招募 | 杜克大学医学院Ethan Fang课题组招募数据科学方向博士后
  8. idea跳到下一个断点_IDEA---断点调试Debug
  9. vscode插件turbo console log快捷键无法使用
  10. 跟踪算法(一)光流法跟踪