2019有赞秋招,字符串旋转

字符串旋转

http://www.nowcoder.com/questionTerminal/cb27a2cc0e8b41cbbdab7b0ca5c1bc23

这道题类似于《编程之法》中的字符串旋转,也可以用双指针解决。还有,注意reverse(start, end)的用法。
时间复杂度:O(n^2)
空间复杂度:O(n)
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

void reverseString() {
    string str, a, b, res = "false";
    cin >> str;
    a = str.substr(0, str.find(';'));
    b = str.substr(str.find(';') + 1);
    string t = a;
    for (int i = 0; i <= a.size(); i++) {
        reverse(t.begin(), t.begin() + i);
        reverse(t.begin() + i, t.end());
        reverse(t.begin(), t.end());
        if (t == b) {
            res = "true";
            break;
        }
        t = a;
    }
    cout << res << endl;
}

int main()
{
    reverseString();
	return 0;
}


全部评论

相关推荐

03-02 08:18
集美大学 Java
钱嘛数字而已:没有赛事奖项么?另外,项目经历字有点多哈,建议突出一下重点:用的什么技术,解决什么问题,达到什么效果。
大家都开始春招面试了吗
点赞 评论 收藏
分享
02-04 17:01
南昌大学 Java
牛客96763241...:拿插件直接投就完了,这玩意看运气的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务