美文网首页
问题:字符串移位

问题:字符串移位

作者: 熊白白 | 来源:发表于2017-07-06 12:02 被阅读21次

对于一个字符串,请设计一个算法,将字符串的长度为len的前缀平移到字符串的最后。

给定一个字符串A和它的长度,同时给定len,请返回平移后的字符串。

思路:
逆序前缀;
逆序后缀;
逆序所有。
这样在O(N)的时间里可以完成

void reverse(char*const P,char*const Q){
     char* p=P,*q=Q;
     while(p<q){
         char x=*p;
         *p=*q;
         *q=x;
         p++;
         q--;
     }
    }
    string stringTranslation(string A, int n, int len) {
        if(len<=0)
            return A;
        char* a=&A[0];
        reverse(a,a+len-1);
        reverse(a+len,a+n-1);
        reverse(a,a+n-1);
        return A;
    }

相关文章

  • 【算法】字符串移位

    问题:一个字符串可以由另一个字符串移位得到,例如abcd,可以由bcad移位得到。 问题分析 这个问题表面上说的是...

  • 问题:字符串移位

    对于一个字符串,请设计一个算法,将字符串的长度为len的前缀平移到字符串的最后。 给定一个字符串A和它的长度,同时...

  • 数据结构1:字符串

    1.1 字符串移位 问题:将字符的前k个字符移到字符串结尾。Input:“abcde”,2Output:“cdea...

  • 剑指Offer——字符串的旋转

    问题一:左旋转字符串 题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模...

  • 移位算法实现

    目标: 实现字符串移位加密. 缺点: 密钥传输 const DIC =':abcdefghijklmnopqrst...

  • iOS字符串移位

    话不多说,直接上代码:写在NSString的category里的方法: length代表移动的位数

  • 常见位运算及技巧

    移位运算 移位运算包含逻辑移位(logical shif) 和 算术移位(arithmetic shift)。 逻...

  • 左旋转字符串-java

    左旋转字符串 题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指...

  • 剑指 offer:43、左旋转字符串

    43. 左旋转字符串 题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模...

  • JZ-043-左旋转字符串

    左旋转字符串 题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指...

网友评论

      本文标题:问题:字符串移位

      本文链接:https://www.haomeiwen.com/subject/xkdhhxtx.html