关注
解释一下斑马那道题,先读题,将串分割为两个子串后分别翻转,再将翻转后的子串拼接,这个拼接操作不允许调换原本两串的先后顺序(即a+b子串不允许拼接为b+a),题目没有描述清晰。 按照这个题意分析题中的一系列操作有什么性质: 举个栗子,现有串“12345”; 从3、4之间切,俩子串为“123”、“45”; 分别翻转,为“321”、“54”; 拼接,为“32154”; 这时候如果把整个串翻转一次(这步不是题目要求对,是为了更清晰地分析题中操作的性质),是不影响本题所求的最长连续相间串长的,翻转后结果为“45123”; 而“45123”是将原串“12345”做“123|45”分割后进行循环移位的结果:对串进行循环左移(或右移)使分割处‘|’位于串的起始(右移对应的是结束)位置,得到“|45123”; 由于进行一次循环移位的移动位数没有限制(位数由分割方式决定),多次循环移位操作的结果都可以由一次循环移位操作得到(可移0到(length(string)-1)位),因此只需分析一次循环移位操作即可——问题转化为寻找循环移位后串的最长连续相间串,于是自然地想到复制一份自身接到尾巴后,扫描一遍这个两倍串得到的答案即为所求。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 大疆今年的机械笔试难吗? #
34366次浏览 405人参与
# 影石Insta360求职进展汇总 #
105761次浏览 935人参与
# 文科生还参加今年的春招吗 #
1598次浏览 20人参与
# 大疆的机械笔试比去年难吗 #
63260次浏览 575人参与
# 选择和努力,哪个更重要? #
36184次浏览 387人参与
# 24届市场营销薪资爆料 #
8969次浏览 62人参与
# 一人推荐一个值得去的通信/硬件公司 #
160159次浏览 1729人参与
# 如果公司降薪,你会跳槽吗? #
42404次浏览 313人参与
# 提前批的机械人,你们都有面试了吗 #
86127次浏览 929人参与
# 产品实习,你更倾向大公司or小公司 #
128603次浏览 1710人参与
# 产品薪资爆料 #
96631次浏览 814人参与
# 春招启动,你开始投递了吗? #
43897次浏览 427人参与
# 秋招前后对offer的期望对比 #
220896次浏览 1648人参与
# 大学四年该怎么过,才不算浪费时间? #
3262次浏览 32人参与
# 华为工作体验 #
149340次浏览 1052人参与
# 职场上哪些事情令人讨厌 #
12612次浏览 57人参与
# 机械人,你的第一份感谢信是谁给的 #
19847次浏览 257人参与
# 和牛牛一起刷真题 #
104897次浏览 2067人参与
# 你觉得机械有必要实习吗 #
33515次浏览 318人参与
# 2022毕业的你对23届的寄语 #
35023次浏览 533人参与