将一个string左移N位置
使用了《编程珠玑》上的解法。
#include <iostream> #include <string> using namespace std;//注意这里使用了XOR进行交换的方法,这种方法不能让一个数和自身交换 void Reverse(string &str, int left, int right){for(; left < right; left++, right--){str[left] = str[left] ^ str[right];str[right] = str[left] ^ str[right];str[left] = str[left] ^ str[right];} }void ShiftStr(string &str, int offset){int len = str.length();offset = offset>=0 ? offset%len : offset%len + len;Reverse(str, 0, offset-1);Reverse(str, offset, len-1);Reverse(str, 0, len-1); }int main() {string str;for (int i = -5; i <= 5; i++){str = "abcdefghijklmn";ShiftStr(str, i);cout<<"Move left "<<i<<" steps : "<<str<<endl;}return 0; }
EOF
转载于:https://www.cnblogs.com/lihaozy/archive/2012/12/12/2814423.html
将一个string左移N位置相关推荐
- string:删除string中指定位置的字符?指定的所有字符?
使用迭代器删除string中指定位置的字符! string str = "huehfudhfruhgfsfgkhdyfsghydff";string::iterator itr = ...
- stoi() 函数----将一个string类型转换为int型
需要的头文件: #include<iostream> 需要的其他东西: using namespace std; 函数的作用: 将一个字符串string类型转换为int 型 用法格式: s ...
- c++string替换指定位置字符_Lua 字符串
--[[ Lua 字符串 字符串或串(String)是由数字.字母.下划线组成的一串字符 Lua语言中字符串可以使用以下三种方式来表示 ]] -- 单引号的一串字符 -- 双引号的一串字符 -- [[ ...
- c++string替换指定位置字符_Excel数据分析:如何替换字符串中的指定字符?
数据分析预处理中,经常遇到这样的问题:现有字符串中,如何替换指定的部分字符,例如有大量电话号码,现需要将这些号码最后四位替换为****,该如何做呢? 类似的问题和使用场景有很多,如果你的行记录有几千几 ...
- 如何将一个string变为string数组
public static void main(String[] args){ String str = "feilong,fei"; String[] split = str.s ...
- java如何接受字符_java中string怎么获取指定位置的字符
//截取#之前的字符串String str = "sdfs#d";str.substring(0, str.indexOf("#"));// 输出的结果为:sd ...
- java string string_深入理解Java:String
在讲解String之前,我们先了解一下Java的内存结构. 一.Java内存模型 按照官方的说法:Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配. JVM主要管理两 ...
- Java面试宝典系列之基础面试题String、变量、类与对象、集合类、SSH(一)
作者:egg 邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef 博客:http://blog.csdn.net/zhangerqing(转载请说明出处) ...
- 转载:c+string类详解
C++ string 类详解 </h1><div class="clear"></div><div class="postBod ...
最新文章
- 别在 Java 代码里乱打日志了,这才是正确的打日志姿势
- Sublime Text3 使用
- 关于IB_DESIGNABLE / IBInspectable的那些事
- python 列表元素操作 push()和append()的区别
- Python基础——数据分析考核(基础版本)
- 内核控制Meta标签:让360浏览器默认使用极速模式打开网页(转)
- EFCore+Mysql仓储层建设(分页、多字段排序、部分字段更新)
- 谈谈HashMap线程不安全的体现
- MyEclipes 设置代码自动提示
- 安徽省2012年下半年计算机水平考试(二级 c语言程序设计),安徽省计算机等级级考试真题C语言2012年12月.doc...
- 状态空间搜索好题UVA10603
- 球体重量在线计算机,材料重量计算器
- VBA-保存指定工作表为工作簿文件
- Linux面试题史上最全总结
- 快速搭建基于《搜狗微信》的公众号爬虫---搜狗微信公众号爬虫教程
- 鸿蒙四月几号升级啊,华为鸿蒙系统升级时间表 鸿蒙系统第二批升级时间是什么时候...
- 高德地图API获取当前位置对应的周边信息
- 正态分布最通俗的解释---今天你正太分布了吗?
- 2019年java_Java回顾#4 – 2019年令人失望
- 同济大学高等数学上册第四章不定积分以及每日一题
热门文章
- 都都的第一次自我游戏
- 架构师书单 2nd Edition
- 抽象类和接口-手机小案例
- SQL基础篇---函数及其函数配套使用的关键字
- apache和tomcat的区别
- activity切换效果
- 利用InfoPath实现SharePoint Server 2013列表的级联选择(Cascading Drop Down List)
- Binary Tree Level Order Traversal II leetcode java
- 【剑指offer】Q38:数字在数组中出现的次数
- 自我理解:const char*, char const* and char *const